React Native Requires Chilkat v11.4.0+
React Native
Example: Mime.GetDecryptCertInfo method
Demonstrates theGetDecryptCertInfo method.
Chilkat React Native Downloads
import { JsonObject, Mime } from '@chilkat/react-native'
function chilkatExample() {
const mime = new Mime();
// Load MIME that is has Content-Type like this:
// Content-Type: application/pkcs7-mime; smime-type="enveloped-data"; name="smime.p7m"; smime-type="enveloped-data"
try {
mime.loadMimeFile('qa_data/mime/enveloped_data.eml');
} catch {
console.log(mime.lastErrorText);
return;
}
// Get information about the certificate that would be needed to decrypt.
// An enveloped-data can potentially be decrypted by multiple certificates if it was encrypted in a way that allows it,
// but in most cases, only a single certificate with associated private key (that of the message recipient) is possible.
const json = new JsonObject();
try {
mime.getDecryptCertInfo(json);
} catch {
console.log(mime.lastErrorText);
return;
}
json.emitCompact = false;
console.log(json.emit());
// Sample output:
// {
// "recipientInfo": [
// {
// "serial": "****",
// "issuerCN": "****"
// }
// ]
// }
// Get each certificate's information like this:
let serial = '';
let issuerCN = '';
let i = 0;
const count = json.sizeOfArray('recipientInfo');
while (i < count) {
json.i = i;
serial = json.stringOf('recipientInfo[i].serial');
issuerCN = json.stringOf('recipientInfo[i].issuerCN');
i++;
}
}