• 本地创建证书


    MAC OS自带了OpenSSL,使用Mac终端指令生成证书

    一、使用openssl终端指令生成公钥和私钥证书,最后需要得到公钥证书(public_key.der)和私钥证书(private_key.p12)这两个证书供iOS端加、解密使用。(rsa_public_key.pem)和(pkcs8_private_key.pem)这两个供Android端使用,这些证书是从同一个私钥证书(private_key.pem)中导出的。Android端的加密数据,可以在Android和iOS端都可以解密,iOS端加密的数据,可以在Android端和iOS端解密。

    1、创建存放证书的文件夹,并cd到该目录下。
    命令行如下:

    //  生成RSA密钥对 1024可换成 2048 增加安全性(2048使用时候需要Android端验证使用,有可能会出错)

    openssl genrsa -out private_key.pem 1024

    // 创建认证需要的文件:rsacertreq.csr

    openssl req -new -key private_key.pem -out rsaCertReq.csr

    // 创建使用X509:rsacert.crt认证, 3650是证书有天数,这里表示是10年

    openssl x509 -req -days 3650 -in rsaCertReq.csr -signkey private_key.pem -out rsaCert.crt

    // 创建公共public_key.der
    openssl x509 -outform der -in rsaCert.crt -out public_key.der

    // 创建private_key.p12 文件。请记住你的密码
    openssl pkcs12 -export -out private_key.p12 -inkey private_key.pem -in rsaCert.crt


    具体如下图

     下面两句指令是生成Android端证书文件的指令:
    // 导出公钥pem文件
    openssl rsa -in private_key.pem -out rsa_public_key.pem -pubout

    //  导出私钥文件
    openssl pkcs8 -topk8 -in private_key.pem -out pkcs8_private_key.pem -nocrypt

    如下图所示:

     生成证书后

    二、实现rsa加密解密

    1,把上面截图中的(iOS)两个证书直接拖到工程中;Android 的可以直接用里面的密钥、公钥字符串

    2,添加系统安全框架:Security.framework (Build Phases->Link Binary With Libraries() 点击+号,搜索最后Add)

    关于加密的代码待添加。

  • 相关阅读:
    Autofac(01)
    深入理解ADO.NET Entity Framework(02)
    使用excel 数据透视表画图
    C# 控制CH341进行SPI,I2C读写
    C# winform使用combobox遍历文件夹内所有文件
    通用分页存储过程
    如何让你的SQL运行得更快
    sql优化之使用索引
    SQL优化
    SQL 循环语句几种写法
  • 原文地址:https://www.cnblogs.com/david-han/p/15292266.html
Copyright © 2020-2023  润新知