@sudoplatform/sudo-common 8.6.1 → 8.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -164,6 +164,60 @@ class DefaultSudoKeyManager {
|
|
|
164
164
|
}
|
|
165
165
|
await this.sudoCryptoProvider.addPublicKey(keyData, name);
|
|
166
166
|
}
|
|
167
|
+
async exportPrivateKeyAsRSAPrivateKey(name) {
|
|
168
|
+
const privateKey = await this.getPrivateKey(name);
|
|
169
|
+
if (!privateKey) {
|
|
170
|
+
return undefined;
|
|
171
|
+
}
|
|
172
|
+
// Convert PrivateKeyInfo (RFC5280) to RSAPrivateKey (RFC3447).
|
|
173
|
+
const privateKeyInfo = pkijs.PrivateKeyInfo.fromBER(privateKey);
|
|
174
|
+
const keyData = privateKeyInfo.parsedKey?.toSchema().toBER();
|
|
175
|
+
return keyData;
|
|
176
|
+
}
|
|
177
|
+
async importPrivateKeyFromRSAPrivateKey(name, privateKey) {
|
|
178
|
+
// Web Crypto Provider currently only accepts PrivateKeyInfo.
|
|
179
|
+
const pki = new pkijs.PrivateKeyInfo();
|
|
180
|
+
pki.privateKeyAlgorithm = new pkijs.AlgorithmIdentifier({
|
|
181
|
+
algorithmId: OID.rsaEncryption,
|
|
182
|
+
algorithmParams: new asn1js.Null(),
|
|
183
|
+
});
|
|
184
|
+
pki.privateKey = new asn1js.OctetString({
|
|
185
|
+
valueHex: privateKey,
|
|
186
|
+
});
|
|
187
|
+
const keyData = pki.toSchema().toBER();
|
|
188
|
+
await this.sudoCryptoProvider.addPrivateKey(keyData, name);
|
|
189
|
+
}
|
|
190
|
+
async exportPublicKeyAsRSAPublicKey(name) {
|
|
191
|
+
const publicKey = await this.getPublicKey(name);
|
|
192
|
+
if (!publicKey) {
|
|
193
|
+
return undefined;
|
|
194
|
+
}
|
|
195
|
+
switch (publicKey.keyFormat) {
|
|
196
|
+
case publicKey_1.PublicKeyFormat.RSAPublicKey:
|
|
197
|
+
return publicKey.keyData;
|
|
198
|
+
case publicKey_1.PublicKeyFormat.SPKI:
|
|
199
|
+
// Convert SPKI (RFC5280) to RSAPublicKey (RFC3447).
|
|
200
|
+
const publicKeyInfo = pkijs.PublicKeyInfo.fromBER(publicKey.keyData);
|
|
201
|
+
const keyData = publicKeyInfo.subjectPublicKey.valueBlock.valueHexView;
|
|
202
|
+
return keyData;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
async importPublicKeyFromRSAPublicKey(name, publicKey) {
|
|
206
|
+
// Web Crypto Provider currently only accepts SPKI and
|
|
207
|
+
// none of the native providers support adding a public
|
|
208
|
+
// key so we will need to convert RSAPublicKey (RFC3447)
|
|
209
|
+
// to SPKI (RFC5280).
|
|
210
|
+
const spki = new pkijs.PublicKeyInfo();
|
|
211
|
+
spki.algorithm = new pkijs.AlgorithmIdentifier({
|
|
212
|
+
algorithmId: OID.rsaEncryption,
|
|
213
|
+
algorithmParams: new asn1js.Null(),
|
|
214
|
+
});
|
|
215
|
+
spki.subjectPublicKey = new asn1js.BitString({
|
|
216
|
+
valueHex: publicKey,
|
|
217
|
+
});
|
|
218
|
+
const keyData = spki.toSchema().toBER();
|
|
219
|
+
await this.sudoCryptoProvider.addPublicKey(keyData, name);
|
|
220
|
+
}
|
|
167
221
|
deleteKeyPair(name) {
|
|
168
222
|
return this.sudoCryptoProvider.deleteKeyPair(name);
|
|
169
223
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sudoKeyManager.js","sourceRoot":"","sources":["../../src/sudoKeyManager/sudoKeyManager.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;AAEH,4CAAsD;AAEtD,2CAAwD;AAOxD,qDAA8B;AAC9B,uDAAgC;AAChC,4CAAwC;AACxC,2CAAsD;AAEtD;;GAEG;AACH,IAAK,GAEJ;AAFD,WAAK,GAAG;IACN,6CAAsC,CAAA;AACxC,CAAC,EAFI,GAAG,KAAH,GAAG,QAEP;AAED;;GAEG;AACH,IAAK,SAGJ;AAHD,WAAK,SAAS;IACZ,4DAA+C,CAAA;IAC/C,qDAAwC,CAAA;AAC1C,CAAC,EAHI,SAAS,KAAT,SAAS,QAGb;AAED;;GAEG;AACH,IAAK,SAGJ;AAHD,WAAK,SAAS;IACZ,0DAA6C,CAAA;IAC7C,mDAAsC,CAAA;AACxC,CAAC,EAHI,SAAS,KAAT,SAAS,QAGb;
|
|
1
|
+
{"version":3,"file":"sudoKeyManager.js","sourceRoot":"","sources":["../../src/sudoKeyManager/sudoKeyManager.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;AAEH,4CAAsD;AAEtD,2CAAwD;AAOxD,qDAA8B;AAC9B,uDAAgC;AAChC,4CAAwC;AACxC,2CAAsD;AAEtD;;GAEG;AACH,IAAK,GAEJ;AAFD,WAAK,GAAG;IACN,6CAAsC,CAAA;AACxC,CAAC,EAFI,GAAG,KAAH,GAAG,QAEP;AAED;;GAEG;AACH,IAAK,SAGJ;AAHD,WAAK,SAAS;IACZ,4DAA+C,CAAA;IAC/C,qDAAwC,CAAA;AAC1C,CAAC,EAHI,SAAS,KAAT,SAAS,QAGb;AAED;;GAEG;AACH,IAAK,SAGJ;AAHD,WAAK,SAAS;IACZ,0DAA6C,CAAA;IAC7C,mDAAsC,CAAA;AACxC,CAAC,EAHI,SAAS,KAAT,SAAS,QAGb;AAmcD,MAAa,qBAAqB;IAChC;;;;OAIG;IACH,YAA6B,kBAAsC;QAAtC,uBAAkB,GAAlB,kBAAkB,CAAoB;IAAG,CAAC;IAEvE,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,CAAA;IACjD,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAA;IAC/C,CAAC;IAEM,WAAW,CAAC,QAAqB,EAAE,IAAY;QACpD,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC5D,CAAC;IAEM,WAAW,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IAClD,CAAC;IAEM,cAAc,CAAC,IAAY;QAChC,OAAO,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;IACrD,CAAC;IAEM,cAAc,CAAC,QAAqB,EAAE,IAAY;QACvD,OAAO,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC/D,CAAC;IAEM,eAAe,CAAC,GAAgB,EAAE,IAAY;QACnD,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAC3D,CAAC;IAEM,eAAe,CAAC,IAAY;QACjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IACtD,CAAC;IAEM,qBAAqB,CAAC,IAAY;QACvC,OAAO,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAA;IAC5D,CAAC;IAEM,kBAAkB,CAAC,IAAY;QACpC,OAAO,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACzD,CAAC;IAEM,eAAe,CAAC,IAAY;QACjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IACtD,CAAC;IAEM,aAAa,CAAC,GAAgB,EAAE,IAAY;QACjD,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACzD,CAAC;IAEM,aAAa,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC;IAEM,mBAAmB,CAAC,IAAY;QACrC,OAAO,IAAI,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAC1D,CAAC;IAEM,YAAY,CAAC,GAAgB,EAAE,IAAY;QAChD,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;IAEM,eAAe,CAAC,IAAY;QACjC,OAAO,IAAI,CAAC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IACtD,CAAC;IAEM,YAAY,CAAC,IAAY;QAC9B,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAC/B,IAAY,EACZ,MAAuB;QAEvB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QAE/C,IAAI,CAAC,SAAS,EAAE;YACd,OAAO,SAAS,CAAA;SACjB;QAED,IAAI,SAAS,CAAC,SAAS,KAAK,2BAAe,CAAC,YAAY,EAAE;YACxD,IAAI,MAAM,KAAK,2BAAe,CAAC,YAAY,EAAE;gBAC3C,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;aACtD;iBAAM;gBACL,oDAAoD;gBACpD,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,aAAa,EAAE,CAAA;gBACtC,IAAI,CAAC,SAAS,GAAG,IAAI,KAAK,CAAC,mBAAmB,CAAC;oBAC7C,WAAW,EAAE,GAAG,CAAC,aAAa;oBAC9B,eAAe,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE;iBACnC,CAAC,CAAA;gBACF,IAAI,CAAC,gBAAgB,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC;oBAC3C,QAAQ,EAAE,SAAS,CAAC,OAAO;iBAC5B,CAAC,CAAA;gBAEF,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAA;aAC5D;SACF;aAAM;YACL,IAAI,MAAM,KAAK,2BAAe,CAAC,IAAI,EAAE;gBACnC,OAAO,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;aACtD;iBAAM;gBACL,oDAAoD;gBACpD,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;gBACpE,MAAM,OAAO,GAAG,aAAa,CAAC,gBAAgB,CAAC,UAAU,CAAC,YAAY,CAAA;gBACtE,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;aAC5C;SACF;IACH,CAAC;IAEM,KAAK,CAAC,sBAAsB,CACjC,IAAY,EACZ,SAAiB;QAEjB,IAAI,MAAuB,CAAA;QAC3B,IACE,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC;YAC1C,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,EAC1C;YACA,MAAM,GAAG,2BAAe,CAAC,YAAY,CAAA;SACtC;aAAM,IACL,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC;YACvC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC,EACvC;YACA,MAAM,GAAG,2BAAe,CAAC,IAAI,CAAA;SAC9B;aAAM;YACL,MAAM,IAAI,4BAAoB,EAAE,CAAA;SACjC;QAED,MAAM,QAAQ,GAAG,SAAS;aACvB,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC;aACvC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACtB,IAAI,OAAO,GAAG,eAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACrC,IAAI,MAAM,KAAK,2BAAe,CAAC,YAAY,EAAE;YAC3C,sDAAsD;YACtD,uDAAuD;YACvD,wDAAwD;YACxD,qBAAqB;YACrB,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,aAAa,EAAE,CAAA;YACtC,IAAI,CAAC,SAAS,GAAG,IAAI,KAAK,CAAC,mBAAmB,CAAC;gBAC7C,WAAW,EAAE,GAAG,CAAC,aAAa;gBAC9B,eAAe,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE;aACnC,CAAC,CAAA;YACF,IAAI,CAAC,gBAAgB,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC;gBAC3C,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAA;YACF,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAA;SAClC;QACD,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC3D,CAAC;IAEM,KAAK,CAAC,+BAA+B,CAC1C,IAAY;QAEZ,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QAEjD,IAAI,CAAC,UAAU,EAAE;YACf,OAAO,SAAS,CAAA;SACjB;QAED,+DAA+D;QAC/D,MAAM,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAC/D,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAA;QAC5D,OAAO,OAAO,CAAA;IAChB,CAAC;IAEM,KAAK,CAAC,iCAAiC,CAC5C,IAAY,EACZ,UAAuB;QAEvB,6DAA6D;QAC7D,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,cAAc,EAAE,CAAA;QACtC,GAAG,CAAC,mBAAmB,GAAG,IAAI,KAAK,CAAC,mBAAmB,CAAC;YACtD,WAAW,EAAE,GAAG,CAAC,aAAa;YAC9B,eAAe,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE;SACnC,CAAC,CAAA;QACF,GAAG,CAAC,UAAU,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC;YACtC,QAAQ,EAAE,UAAU;SACrB,CAAC,CAAA;QACF,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAA;QAEtC,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC5D,CAAC;IAEM,KAAK,CAAC,6BAA6B,CACxC,IAAY;QAEZ,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;QAE/C,IAAI,CAAC,SAAS,EAAE;YACd,OAAO,SAAS,CAAA;SACjB;QAED,QAAQ,SAAS,CAAC,SAAS,EAAE;YAC3B,KAAK,2BAAe,CAAC,YAAY;gBAC/B,OAAO,SAAS,CAAC,OAAO,CAAA;YAC1B,KAAK,2BAAe,CAAC,IAAI;gBACvB,oDAAoD;gBACpD,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;gBACpE,MAAM,OAAO,GAAG,aAAa,CAAC,gBAAgB,CAAC,UAAU,CAAC,YAAY,CAAA;gBACtE,OAAO,OAAO,CAAA;SACjB;IACH,CAAC;IAEM,KAAK,CAAC,+BAA+B,CAC1C,IAAY,EACZ,SAAsB;QAEtB,sDAAsD;QACtD,uDAAuD;QACvD,wDAAwD;QACxD,qBAAqB;QACrB,MAAM,IAAI,GAAG,IAAI,KAAK,CAAC,aAAa,EAAE,CAAA;QACtC,IAAI,CAAC,SAAS,GAAG,IAAI,KAAK,CAAC,mBAAmB,CAAC;YAC7C,WAAW,EAAE,GAAG,CAAC,aAAa;YAC9B,eAAe,EAAE,IAAI,MAAM,CAAC,IAAI,EAAE;SACnC,CAAC,CAAA;QACF,IAAI,CAAC,gBAAgB,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC;YAC3C,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAA;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAA;QAEvC,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAC3D,CAAC;IAEM,aAAa,CAAC,IAAY;QAC/B,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IACpD,CAAC;IAEM,+BAA+B,CACpC,IAAY,EACZ,IAAiB,EACjB,OAA0B;QAE1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,+BAA+B,CAC5D,IAAI,EACJ,IAAI,EACJ,OAAO,CACR,CAAA;IACH,CAAC;IAED,4BAA4B,CAC1B,IAAY,EACZ,IAAiB,EACjB,SAAsB,EACtB,OAA0B;QAE1B,OAAO,IAAI,CAAC,kBAAkB,CAAC,4BAA4B,CACzD,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,OAAO,CACR,CAAA;IACH,CAAC;IAEM,uBAAuB,CAC5B,GAAgB,EAChB,IAAiB,EACjB,WAAsD;QAEtD,IAAI,eAAU,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;YACzC,OAAO,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,GAAG,EAAE,IAAI,EAAE;gBAChE,EAAE,EAAE,WAAW;aAChB,CAAC,CAAA;SACH;aAAM;YACL,OAAO,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CACpD,GAAG,EACH,IAAI,EACJ,WAAW,CACZ,CAAA;SACF;IACH,CAAC;IAEM,uBAAuB,CAC5B,GAAgB,EAChB,IAAiB,EACjB,WAAsD;QAEtD,IAAI,eAAU,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;YACzC,OAAO,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,GAAG,EAAE,IAAI,EAAE;gBAChE,EAAE,EAAE,WAAW;aAChB,CAAC,CAAA;SACH;aAAM;YACL,OAAO,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CACpD,GAAG,EACH,IAAI,EACJ,WAAW,CACZ,CAAA;SACF;IACH,CAAC;IAEM,2BAA2B,CAChC,IAAY,EACZ,IAAiB,EACjB,WAAsD;QAEtD,IAAI,eAAU,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;YACzC,OAAO,IAAI,CAAC,kBAAkB,CAAC,2BAA2B,CAAC,IAAI,EAAE,IAAI,EAAE;gBACrE,EAAE,EAAE,WAAW;aAChB,CAAC,CAAA;SACH;aAAM;YACL,OAAO,IAAI,CAAC,kBAAkB,CAAC,2BAA2B,CACxD,IAAI,EACJ,IAAI,EACJ,WAAW,CACZ,CAAA;SACF;IACH,CAAC;IAEM,2BAA2B,CAChC,IAAY,EACZ,IAAiB,EACjB,WAAsD;QAEtD,IAAI,eAAU,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;YACzC,OAAO,IAAI,CAAC,kBAAkB,CAAC,2BAA2B,CAAC,IAAI,EAAE,IAAI,EAAE;gBACrE,EAAE,EAAE,WAAW;aAChB,CAAC,CAAA;SACH;aAAM;YACL,OAAO,IAAI,CAAC,kBAAkB,CAAC,2BAA2B,CACxD,IAAI,EACJ,IAAI,EACJ,WAAW,CACZ,CAAA;SACF;IACH,CAAC;IAEM,oBAAoB,CACzB,IAAY,EACZ,IAAiB,EACjB,OAAqC;QAErC,OAAO,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IAC1E,CAAC;IAEM,qBAAqB,CAC1B,IAAY,EACZ,IAAiB,EACjB,OAAqC;QAErC,OAAO,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IAC3E,CAAC;IAEM,aAAa;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,CAAA;IAChD,CAAC;IAEM,oBAAoB,CAAC,IAAY;QACtC,OAAO,IAAI,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAA;IAC3D,CAAC;IAEM,gCAAgC,CACrC,QAAqB,EACrB,IAAiB,EACjB,OAA6B;QAE7B,OAAO,IAAI,CAAC,kBAAkB,CAAC,gCAAgC,CAC7D,QAAQ,EACR,IAAI,EACJ,OAAO,CACR,CAAA;IACH,CAAC;IAEM,kBAAkB,CAAC,IAAY;QACpC,OAAO,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACzD,CAAC;IAEM,YAAY,CAAC,IAAiB;QACnC,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IACnD,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAA;IAC7C,CAAC;IAEO,cAAc,CAAC,GAAgB,EAAE,MAAuB;QAC9D,MAAM,OAAO,GAAG,eAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAClC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QACvC,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,4BAAoB,EAAE,CAAA;SACjC;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,CACL,aAAa;YACb,CAAC,MAAM,KAAK,2BAAe,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,mBAAmB;YACnB,SAAS;YACT,aAAa;YACb,CAAC,MAAM,KAAK,2BAAe,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,iBAAiB,CAClB,CAAA;IACH,CAAC;CACF;AA5YD,sDA4YC"}
|
|
@@ -160,6 +160,60 @@ export class DefaultSudoKeyManager {
|
|
|
160
160
|
}
|
|
161
161
|
await this.sudoCryptoProvider.addPublicKey(keyData, name);
|
|
162
162
|
}
|
|
163
|
+
async exportPrivateKeyAsRSAPrivateKey(name) {
|
|
164
|
+
const privateKey = await this.getPrivateKey(name);
|
|
165
|
+
if (!privateKey) {
|
|
166
|
+
return undefined;
|
|
167
|
+
}
|
|
168
|
+
// Convert PrivateKeyInfo (RFC5280) to RSAPrivateKey (RFC3447).
|
|
169
|
+
const privateKeyInfo = pkijs.PrivateKeyInfo.fromBER(privateKey);
|
|
170
|
+
const keyData = privateKeyInfo.parsedKey?.toSchema().toBER();
|
|
171
|
+
return keyData;
|
|
172
|
+
}
|
|
173
|
+
async importPrivateKeyFromRSAPrivateKey(name, privateKey) {
|
|
174
|
+
// Web Crypto Provider currently only accepts PrivateKeyInfo.
|
|
175
|
+
const pki = new pkijs.PrivateKeyInfo();
|
|
176
|
+
pki.privateKeyAlgorithm = new pkijs.AlgorithmIdentifier({
|
|
177
|
+
algorithmId: OID.rsaEncryption,
|
|
178
|
+
algorithmParams: new asn1js.Null(),
|
|
179
|
+
});
|
|
180
|
+
pki.privateKey = new asn1js.OctetString({
|
|
181
|
+
valueHex: privateKey,
|
|
182
|
+
});
|
|
183
|
+
const keyData = pki.toSchema().toBER();
|
|
184
|
+
await this.sudoCryptoProvider.addPrivateKey(keyData, name);
|
|
185
|
+
}
|
|
186
|
+
async exportPublicKeyAsRSAPublicKey(name) {
|
|
187
|
+
const publicKey = await this.getPublicKey(name);
|
|
188
|
+
if (!publicKey) {
|
|
189
|
+
return undefined;
|
|
190
|
+
}
|
|
191
|
+
switch (publicKey.keyFormat) {
|
|
192
|
+
case PublicKeyFormat.RSAPublicKey:
|
|
193
|
+
return publicKey.keyData;
|
|
194
|
+
case PublicKeyFormat.SPKI:
|
|
195
|
+
// Convert SPKI (RFC5280) to RSAPublicKey (RFC3447).
|
|
196
|
+
const publicKeyInfo = pkijs.PublicKeyInfo.fromBER(publicKey.keyData);
|
|
197
|
+
const keyData = publicKeyInfo.subjectPublicKey.valueBlock.valueHexView;
|
|
198
|
+
return keyData;
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
async importPublicKeyFromRSAPublicKey(name, publicKey) {
|
|
202
|
+
// Web Crypto Provider currently only accepts SPKI and
|
|
203
|
+
// none of the native providers support adding a public
|
|
204
|
+
// key so we will need to convert RSAPublicKey (RFC3447)
|
|
205
|
+
// to SPKI (RFC5280).
|
|
206
|
+
const spki = new pkijs.PublicKeyInfo();
|
|
207
|
+
spki.algorithm = new pkijs.AlgorithmIdentifier({
|
|
208
|
+
algorithmId: OID.rsaEncryption,
|
|
209
|
+
algorithmParams: new asn1js.Null(),
|
|
210
|
+
});
|
|
211
|
+
spki.subjectPublicKey = new asn1js.BitString({
|
|
212
|
+
valueHex: publicKey,
|
|
213
|
+
});
|
|
214
|
+
const keyData = spki.toSchema().toBER();
|
|
215
|
+
await this.sudoCryptoProvider.addPublicKey(keyData, name);
|
|
216
|
+
}
|
|
163
217
|
deleteKeyPair(name) {
|
|
164
218
|
return this.sudoCryptoProvider.deleteKeyPair(name);
|
|
165
219
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sudoKeyManager.js","sourceRoot":"","sources":["../../src/sudoKeyManager/sudoKeyManager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEtD,OAAO,EAAa,eAAe,EAAE,MAAM,aAAa,CAAA;AAOxD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAA;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAEtD;;GAEG;AACH,IAAK,GAEJ;AAFD,WAAK,GAAG;IACN,6CAAsC,CAAA;AACxC,CAAC,EAFI,GAAG,KAAH,GAAG,QAEP;AAED;;GAEG;AACH,IAAK,SAGJ;AAHD,WAAK,SAAS;IACZ,4DAA+C,CAAA;IAC/C,qDAAwC,CAAA;AAC1C,CAAC,EAHI,SAAS,KAAT,SAAS,QAGb;AAED;;GAEG;AACH,IAAK,SAGJ;AAHD,WAAK,SAAS;IACZ,0DAA6C,CAAA;IAC7C,mDAAsC,CAAA;AACxC,CAAC,EAHI,SAAS,KAAT,SAAS,QAGb;
|
|
1
|
+
{"version":3,"file":"sudoKeyManager.js","sourceRoot":"","sources":["../../src/sudoKeyManager/sudoKeyManager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sudoplatform/sudo-common",
|
|
3
|
-
"version": "8.
|
|
3
|
+
"version": "8.7.0",
|
|
4
4
|
"author": "Anonyome Labs, Inc.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -103,5 +103,8 @@
|
|
|
103
103
|
"ts-jest": 1684846723,
|
|
104
104
|
"typescript": 1684846723
|
|
105
105
|
}
|
|
106
|
+
},
|
|
107
|
+
"auditSuppressions": {
|
|
108
|
+
"1092278": 1688088266
|
|
106
109
|
}
|
|
107
110
|
}
|
|
@@ -126,6 +126,36 @@ export interface SudoKeyManager {
|
|
|
126
126
|
* @param publicKey The public key to import.
|
|
127
127
|
*/
|
|
128
128
|
importPublicKeyFromPEM(name: string, publicKey: string): Promise<void>;
|
|
129
|
+
/**
|
|
130
|
+
* Exports the private key from the secure store as RSAPrivateKey.
|
|
131
|
+
*
|
|
132
|
+
* @param name The name of the private key.
|
|
133
|
+
*
|
|
134
|
+
* @returns The private key or undefined if the key was not found.
|
|
135
|
+
*/
|
|
136
|
+
exportPrivateKeyAsRSAPrivateKey(name: string): Promise<ArrayBuffer | undefined>;
|
|
137
|
+
/**
|
|
138
|
+
* Imports a RSAPrivateKey into the secure store.
|
|
139
|
+
*
|
|
140
|
+
* @param name The name of the private key.
|
|
141
|
+
* @param privateKey The private key to import.
|
|
142
|
+
*/
|
|
143
|
+
importPrivateKeyFromRSAPrivateKey(name: string, privateKey: ArrayBuffer): Promise<void>;
|
|
144
|
+
/**
|
|
145
|
+
* Exports the public key from the secure store as RSAPublicKey.
|
|
146
|
+
*
|
|
147
|
+
* @param name The name of the public key.
|
|
148
|
+
*
|
|
149
|
+
* @returns The public key or undefined if the key was not found.
|
|
150
|
+
*/
|
|
151
|
+
exportPublicKeyAsRSAPublicKey(name: string): Promise<ArrayBuffer | undefined>;
|
|
152
|
+
/**
|
|
153
|
+
* Imports a RSAPublicKey into the secure store.
|
|
154
|
+
*
|
|
155
|
+
* @param name The name of the public key.
|
|
156
|
+
* @param publicKey The public key to import.
|
|
157
|
+
*/
|
|
158
|
+
importPublicKeyFromRSAPublicKey(name: string, publicKey: ArrayBuffer): Promise<void>;
|
|
129
159
|
/**
|
|
130
160
|
* Deletes a key pair from the secure store.
|
|
131
161
|
*
|
|
@@ -345,6 +375,10 @@ export declare class DefaultSudoKeyManager implements SudoKeyManager {
|
|
|
345
375
|
getPublicKey(name: string): Promise<PublicKey | undefined>;
|
|
346
376
|
exportPublicKeyAsPEM(name: string, format: PublicKeyFormat): Promise<string | undefined>;
|
|
347
377
|
importPublicKeyFromPEM(name: string, publicKey: string): Promise<void>;
|
|
378
|
+
exportPrivateKeyAsRSAPrivateKey(name: string): Promise<ArrayBuffer | undefined>;
|
|
379
|
+
importPrivateKeyFromRSAPrivateKey(name: string, privateKey: ArrayBuffer): Promise<void>;
|
|
380
|
+
exportPublicKeyAsRSAPublicKey(name: string): Promise<ArrayBuffer | undefined>;
|
|
381
|
+
importPublicKeyFromRSAPublicKey(name: string, publicKey: ArrayBuffer): Promise<void>;
|
|
348
382
|
deleteKeyPair(name: string): Promise<void>;
|
|
349
383
|
generateSignatureWithPrivateKey(name: string, data: ArrayBuffer, options?: SignatureOptions): Promise<ArrayBuffer>;
|
|
350
384
|
verifySignatureWithPublicKey(name: string, data: ArrayBuffer, signature: ArrayBuffer, options?: SignatureOptions): Promise<boolean>;
|