Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Enkripsi di sisi klien
AWS Encryption SDKTermasuk operasi API untuk melakukan enkripsi amplop menggunakan kunci KMS. Untuk rekomendasi lengkap dan detail penggunaan, lihat dokumentasi terkait. Aplikasi klien dapat menggunakan AWS Encryption SDK untuk melakukan enkripsi amplop menggunakan AWS KMS.
// Instantiate the SDK final AwsCrypto crypto = new AwsCrypto(); // Set up the KmsMasterKeyProvider backed by the default credentials final KmsMasterKeyProvider prov = new KmsMasterKeyProvider(keyId); // Do the encryption final byte[] ciphertext = crypto.encryptData(prov, message);
Aplikasi klien dapat menjalankan langkah-langkah berikut:
Permintaan dibuat di bawah kunci KMS untuk kunci data baru. Kunci data terenkripsi dan versi plaintext dari kunci data akan dikembalikan.
Di dalam AWS Encryption SDK, kunci data plaintext digunakan untuk mengenkripsi pesan. Kunci data plaintext kemudian dihapus dari memori.
Kunci data terenkripsi dan pesan terenkripsi digabungkan menjadi array byte ciphertext tunggal.
Pesan terenkripsi envelope dapat didekripsi menggunakan fungsionalitas dekripsi untuk mendapatkan pesan terenkripsi awal.
final AwsCrypto crypto = new AwsCrypto(); final KmsMasterKeyProvider prov = new KmsMasterKeyProvider(keyId); // Decrypt the data final CryptoResult<byte[], KmsMasterKey> res = crypto.decryptData(prov, ciphertext); // We need to check the KMS key to ensure that the // assumed key was used if (!res.getMasterKeyIds().get(0).equals(keyId)) { throw new IllegalStateException("Wrong key id!"); } byte[] plaintext = res.getResult();
AWS Encryption SDK Mem-parsing pesan terenkripsi amplop untuk mendapatkan kunci data terenkripsi dan membuat permintaan untuk mendekripsi kunci data. AWS KMS
AWS Encryption SDK Menerima kunci data plaintext dari. AWS KMS
Kunci data kemudian digunakan untuk mendekripsi pesan, mengembalikan plaintext awal.