Comparing version 1.2.3 to 1.3.0
@@ -468,4 +468,2 @@ /* | ||
})); | ||
//new in_window.org.pkijs.asn1.OCTETSTRING({ name: (names.eContent || "") }) | ||
} | ||
@@ -628,2 +626,24 @@ //************************************************************************************** | ||
//************************************************************************************** | ||
// #region ASN.1 schema for CMS "PBES2-params" type (RFC2898) | ||
//************************************************************************************** | ||
in_window.org.pkijs.schema.cms.PBES2_params = | ||
function() | ||
{ | ||
//PBES2-params ::= SEQUENCE { | ||
// keyDerivationFunc AlgorithmIdentifier {{PBES2-KDFs}}, | ||
// encryptionScheme AlgorithmIdentifier {{PBES2-Encs}} } | ||
var names = in_window.org.pkijs.getNames(arguments[0]); | ||
return (new in_window.org.pkijs.asn1.SEQUENCE({ | ||
name: (names.block_name || ""), | ||
value: [ | ||
in_window.org.pkijs.schema.ALGORITHM_IDENTIFIER(names.keyDerivationFunc || {}), | ||
in_window.org.pkijs.schema.ALGORITHM_IDENTIFIER(names.encryptionScheme || {}) | ||
] | ||
})); | ||
} | ||
//************************************************************************************** | ||
// #endregion | ||
//************************************************************************************** | ||
// #region ASN.1 schema definition for "RecipientInfo" type (RFC5652) | ||
@@ -1178,3 +1198,42 @@ //************************************************************************************** | ||
//************************************************************************************** | ||
// #region ASN.1 schema definition for "EncryptedData" type (RFC5652) | ||
//************************************************************************************** | ||
in_window.org.pkijs.schema.CMS_ENCRYPTED_DATA = | ||
function() | ||
{ | ||
//id-encryptedData OBJECT IDENTIFIER ::= { iso(1) member-body(2) | ||
// us(840) rsadsi(113549) pkcs(1) pkcs7(7) 6 } | ||
//EncryptedData ::= SEQUENCE { | ||
// version CMSVersion, | ||
// encryptedContentInfo EncryptedContentInfo, | ||
// unprotectedAttrs [1] IMPLICIT UnprotectedAttributes OPTIONAL } | ||
var names = in_window.org.pkijs.getNames(arguments[0]); | ||
return (new in_window.org.pkijs.asn1.SEQUENCE({ | ||
name: (names.block_name || ""), | ||
value: [ | ||
new in_window.org.pkijs.asn1.INTEGER({ name: (names.version || "") }), | ||
in_window.org.pkijs.schema.cms.EncryptedContentInfo(names.encryptedContentInfo || {}), | ||
new in_window.org.pkijs.asn1.ASN1_CONSTRUCTED({ | ||
optional: true, | ||
id_block: { | ||
tag_class: 3, // CONTEXT-SPECIFIC | ||
tag_number: 1 // [1] | ||
}, | ||
value: [ | ||
new in_window.org.pkijs.asn1.REPEATED({ | ||
name: (names.unprotectedAttrs || ""), | ||
value: in_window.org.pkijs.schema.ATTRIBUTE() | ||
}) | ||
] | ||
}) | ||
] | ||
})); | ||
} | ||
//************************************************************************************** | ||
// #endregion | ||
//************************************************************************************** | ||
} | ||
)(typeof exports !== "undefined" ? exports : window); |
@@ -116,2 +116,17 @@ /* | ||
//************************************************************************************** | ||
in_window.org.pkijs.padNumber = | ||
function(input_number, full_length) | ||
{ | ||
var str = input_number.toString(10); | ||
var dif = full_length - str.length; | ||
var padding = new Array(dif); | ||
for(var i = 0; i < dif; i++) | ||
padding[i] = '0'; | ||
var padding_string = padding.join(''); | ||
return padding_string.concat(str); | ||
} | ||
//************************************************************************************** | ||
in_window.org.pkijs.getValue = | ||
@@ -680,3 +695,3 @@ function(args, item, default_value) | ||
name: "HMAC", | ||
length: 10, | ||
length: 32, | ||
hash: { | ||
@@ -683,0 +698,0 @@ name: "SHA-256" |
@@ -8,3 +8,3 @@ { | ||
"description": "Public Key Infrastructure (PKI) is the basis of how identity and key management is performed on the web today. PKIjs is a pure JavaScript library implementing the formats that are used in PKI applications. It is built on WebCrypto and aspires to make it possible to build native web applications that utilize X.509 and the related formats on the web without plug-ins", | ||
"version": "1.2.3", | ||
"version": "1.3.0", | ||
"repository": { | ||
@@ -11,0 +11,0 @@ "type": "git", |
# PKIjs | ||
[![license](https://img.shields.io/badge/license-BSD-green.svg?style=flat)](https://raw.githubusercontent.com/GlobalSign/PKI.js/master/LICENSE) | ||
Public Key Infrastructure (PKI) is the basis of how identity and key management is performed on the web today. PKIjs is a pure JavaScript library implementing the formats that are used in PKI applications. It is built on WebCrypto ([Web Cryptography API](http://www.w3.org/TR/WebCryptoAPI/)) and aspires to make it possible to build native web applications that utilize X.509 and the related formats on the web without plug-ins. | ||
@@ -31,3 +33,3 @@ | ||
* All "support types" for Time-Stamping Protocol (TSP) requests and responces; | ||
* **Has own certification chain verification engine, purelly made on JavaScript with help from Promises and Web Cryptography API latest standard implementation;** | ||
* **Has own certification chain verification engine, built in pure JavaScript, with help from Promises and Web Cryptography API latest standard implementation;** | ||
* Working with **all** Web Cryptography API signature algorithms: | ||
@@ -88,4 +90,11 @@ * RSASSA-PKCS1-v1_5; | ||
* Decryption with full support for "Suite B" algorithms and more; | ||
* CMS Encrypted Data: | ||
* Parsing internal values; | ||
* Getting/setting any internal values; | ||
* Creation (encryption) with password; | ||
* Decryption with password; | ||
* PKCS#12: | ||
* Parsing internal values; | ||
* Making any kind of internal values (SafeContexts/SafeBags) with any kind of parameters; | ||
## Examples | ||
@@ -192,2 +201,5 @@ | ||
## Bug Reporting | ||
Please report bugs either as pull requests or as issues in the issue tracker. PKIjs has a full disclosure vulnerability policy. Please do NOT attempt to report any security vulnerability in this code privately to anybody. | ||
## Related source code | ||
@@ -194,0 +206,0 @@ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
3863775
60
67598
288