PrivateKey

PrivateKey[assoc]

表示公开密钥加密系统内一对密钥中的私人密钥.

更多信息

  • PrivateKey 对象可以和诸如 EncryptDecryptDecrypt 这样的函数一起使用.
  • 对于加密,如果是用对应的 PublicKey 对象加密的数据可以用特殊的 PrivateKey 对象解密.
  • 可以用 GenerateAsymmetricKeyPair 产生相应的密钥对:PrivateKeyPublicKey 对象.
  • PrivateKey[]["prop"] 可用于提取私钥的属性.
  • PrivateKey 的基本属性包括:
  • "Type"加密的类型
    "PrivateByteArray"以字节数组形式给出的私钥
    "PublicByteArray"以字节数组形式给出的公钥
    "PrivateHexString"用十六进制字符串给出的私钥
    "PublicHexString"用十六进制字符串给出的公钥
    "PrivateKeySize"私钥的大小(以 bit 为单位)
    "PublicKeySize"公钥的大小(以 bit 为单位)
  • 加密的可能类型包括 "RSA" 和 "EllipticCurve".
  • "RSA" 的其他属性包括:
  • "PrivateExponent"私有指数
    "PublicExponent"公共指数
    "PublicModulus"公共模数
    "Padding"填充模式
  • "EllipticCurve" 的其他属性包括:
  • "CurveName"椭圆曲线的名称(例如,"sec256k1")
    "PrivateMultiplier"私有乘数
    "PublicCurvePoint"公共曲线点
    "Compressed"公钥是否是压缩格式
  • $CryptographicEllipticCurveNames 中列出了 "CurveName" 的可能的设置.
  • PrivateKey[]["Parameters"] 以关联的形式给出对象中包含的所有信息.
  • PrivateKey[]["Properties"] 给出所有可用属性的列表.

范例

打开所有单元关闭所有单元

基本范例  (2)

产生公钥和私钥:

用公钥进行加密:

用私钥进行解密:

产生基于椭圆曲线的私钥:

检查产生密钥对的椭圆曲线:

发现所有可用私钥的属性:

范围  (2)

可以将 PrivateKey 用作有效私钥对象的构造函数.

生成公钥和私钥:

获取私钥:

从预生成的值构建一个有效的私钥对象:

测试其是否与原始密钥匹配:

从以十六进制字符串形式给出的现有密钥构建有效的 PrivateKey 对象:

也可以使用密钥的整数表示形式:

在两种情况下,表示相同:

属性和关系  (2)

GenerateAsymmetricKeyPair 创建的 PrivateKey 对象包含密钥的一组完整属性:

无需提供所有属性即可重建有效的私钥对象. 对于椭圆曲线,仅指定私有乘数即可:

验证密钥是否相同:

或者,使用私有乘数的十六进制字符串表示形式:

验证所有密钥是否相同:

使用 ByteArray 表示形式:

验证所有密钥是否相同:

如果想要重建 RSA 的 PrivateKey 对象,需同时提供私有指数和公共模数:

重新创建与最初从 GenerateAsymmetricKeyPair 获得的对象相同的对象:

验证两个密钥是否相同:

Wolfram Research (2015),PrivateKey,Wolfram 语言函数,https://reference.wolfram.com/language/ref/PrivateKey.html (更新于 2020 年).

文本

Wolfram Research (2015),PrivateKey,Wolfram 语言函数,https://reference.wolfram.com/language/ref/PrivateKey.html (更新于 2020 年).

CMS

Wolfram 语言. 2015. "PrivateKey." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2020. https://reference.wolfram.com/language/ref/PrivateKey.html.

APA

Wolfram 语言. (2015). PrivateKey. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/PrivateKey.html 年

BibTeX

@misc{reference.wolfram_2024_privatekey, author="Wolfram Research", title="{PrivateKey}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/PrivateKey.html}", note=[Accessed: 21-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_privatekey, organization={Wolfram Research}, title={PrivateKey}, year={2020}, url={https://reference.wolfram.com/language/ref/PrivateKey.html}, note=[Accessed: 21-November-2024 ]}