Pot*_*Ion 9 binary-data key-pair ecdsa swift apple-cryptokit
iOS 13的CryptoKit框架.rawRepresentation为ECDSA公钥和私钥提供了价值。我一直在尝试对rawRepresentation数据类型进行逆向工程,以便在它与JWK之间进行转换。从公钥表示形式的64字节长度来看,这似乎是一个简单的x || y串联。我猜想那会是私钥x || y || d,但是事实并非如此,因为这样做应该会产生96字节的字符串,而实际rawRepresentation是144字节。似乎也不是有效的DER / ASN.1字符串。我还没有找到符合我所得到的实际值的规格。
如您所料,Apple的文档具有很强的描述性。
rawRepresentation:私钥的表示形式,以字节的集合表示。
提供了十六进制的示例密钥对。
Private: 988f8187ff7f00007466815b0d6b02ae1a063198fd1e4923fb1e413195126cc00d30483284186b435726c0c69cc774274ea32eb6a17cbaf2ea88dd7f3a5a2a3ce637bc4b96523c2795035bd2fbeb093b010000000000000000000000000000000000000000000000000000000000000012b2b61abe8beae5aeb6d0bda739235364de96c7f498813cfb0336198dcf9063
Public: 2774c79cc6c02657436b18843248300dc06c129531411efb23491efd9831061a3b09ebfbd25b0395273c52964bbc37e63c2a5a3a7fdd88eaf2ba7ca1b62ea34e
Run Code Online (Sandbox Code Playgroud)
这是什么格式?
我无法弄清楚rawRepresentation,所以我最终使用x963Representation,它0x04 + x + y + d用于私钥(97 字节)和04 + x + y公钥(65 字节)。
| 归档时间: |
|
| 查看次数: |
137 次 |
| 最近记录: |