Archived Forum Post

Index of archived forum posts

Question:

PKCS7/CMS/CAdES format?

Oct 21 '15 at 18:11

I'm a Android and iOS developer and I'm starting to develop a App to sign and encrypt electronic documents in PKCS#7/CMS format and I would like to know what product I need to buy to cover Android and iOS platform.

Other doubt is about CAdES format, in your website there isn't a example about how the library sign documents in CAdES format, today is possible to sign in this format?

With how often chilkatsoft is released a new version?


Answer

Starting in Chilkat v9.3.0, it is possible to create CAdES-BES and CAdES-EPES digital signatures via the MailMan, Mime, and Crypt2 objects. All three objects/classes now include the following new properties:

bool CadesEnabled;
string CadesSigPolicyId;
string CadesSigPolicyUri;
string CadesSigPolicyHash;  (base64 encoded representation of hash)

To create a CAdES-BES signature, simply set the CadesEnabled property = true.

For CAdES-EPES, set each of the other new properties. For example:

crypt.CadesSigPolicyId = “2.16.76.1.7.1.1.1″;
crypt.CadesSigPolicyUri = “http://politicas.icpbrasil.gov.br/PA_AD_RB.der”;
crypt.CadesSigPolicyHash = “rySugyKaMhiMR8Y/o5yuU2A2bF0=”;

If you set these properties prior to calling any method that creates a signature, then a CAdES signature is created.

A single license covers all supported operating systems, programming languages, frameworks, architectures, etc. For example, a 1-Developer Chilkat Crypt license is valid for the Crypt functionality across all platforms.

New releases are not regularly scheduled, but happen on average once every 4-5 months.


Answer

The 1-Developer Bundle is for 1 software developer (programmer), but the 4-Developer Bundle is for up to 4 developers (programmers).


Answer

How can I generate the CadesSigPolicyHash?


Answer

Ok, but it's not work. I'm using this sample in Node to create a .p7s (Detached Signature) file. http://www.example-code.com/nodejs/crypt_create_p7s_using_pfx.asp

I'm using this parameters:

crypt.CadesEnabled= true; crypt.CadesSigPolicyId = "2.16.76.1.7.1.6.2.1"; crypt.CadesSigPolicyUri = "http://politicas.icpbrasil.gov.br/PA_AD_RB_v2_1.der"; var b = new Buffer("3259f8a99b35393afadfa681fc381cd1eb6925c68718a8e92f7a658f253d3ba5",'hex'); console.log(b.toString('base64')) crypt.CadesSigPolicyHash = b.toString('base64');

The file is generated as success but when it is submited to test on https://verificador.iti.gov.br/verificador.xhtml it's don't pass.