11import { AsnParser } from '@peculiar/asn1-schema' ;
22import { Certificate } from '@peculiar/asn1-x509' ;
33import { ECParameters , id_ecPublicKey , id_secp256r1 , id_secp384r1 } from '@peculiar/asn1-ecc' ;
4+ import { id_rsaEncryption , RSAPublicKey } from '@peculiar/asn1-rsa' ;
5+
46import {
57 COSECRV ,
68 COSEKEYS ,
@@ -9,12 +11,11 @@ import {
911 COSEPublicKeyEC2 ,
1012 COSEPublicKeyRSA ,
1113} from './cose.ts' ;
12- import { RSAPublicKey } from '@peculiar/asn1-rsa' ;
13-
1414import { mapX509SignatureAlgToCOSEAlg } from './mapX509SignatureAlgToCOSEAlg.ts' ;
15+ import type { Uint8Array_ } from '../types/index.ts' ;
1516
1617export function convertX509PublicKeyToCOSE (
17- x509Certificate : Uint8Array ,
18+ x509Certificate : Uint8Array_ ,
1819) : COSEPublicKey {
1920 let cosePublicKey : COSEPublicKey = new Map ( ) ;
2021
@@ -59,8 +60,8 @@ export function convertX509PublicKeyToCOSE(
5960 subjectPublicKeyInfo . subjectPublicKey ,
6061 ) ;
6162
62- let x : Uint8Array ;
63- let y : Uint8Array ;
63+ let x : Uint8Array_ ;
64+ let y : Uint8Array_ ;
6465 if ( subjectPublicKey [ 0 ] === 0x04 ) {
6566 // Public key is in "uncompressed form", so we can split the remaining bytes in half
6667 let pointer = 1 ;
@@ -84,7 +85,7 @@ export function convertX509PublicKeyToCOSE(
8485 coseEC2PubKey . set ( COSEKEYS . y , y ) ;
8586
8687 cosePublicKey = coseEC2PubKey ;
87- } else if ( publicKeyAlgorithmID === '1.2.840.113549.1.1.1' ) {
88+ } else if ( publicKeyAlgorithmID === id_rsaEncryption ) {
8889 /**
8990 * RSA public key
9091 */
0 commit comments