uniapp离线打包 如何查看公钥 /android studio 导出秘钥证书/获取MD5 SHA256 SHA1值

项目场景:

  1. 使用uniapp离线打包 或者 根据 云端证书 获取 秘钥证书
  2. app申请阿里云备案
  3. 在android studio 查看 离线打包的的MD5 SHA256 SHA1值

问题描述

提示:根据证书或者签名 获取 MD5 SHA256 SHA1值 公钥

在这里插入图片描述
or
在这里插入图片描述


解决方案:

1.根据云端获取

keytool -export -alias  证书详情中的别名 -file certificate.cer -keystore 证书文件名e

在这里插入图片描述
生成证书 查看公钥

在这里插入图片描述
2.android studio 获取MD5 SHA256 SHA1值

例: keytool -list -v -keystore com.yunqibangtech.android.driver.keystore

在这里插入图片描述
3.如果没有获取到MD5
file => setting => experi… => only 去掉

运行 tasks->android-> sigingReport

 signingConfigs {
        config {
            storeFile file("com.yunqibangtech.android.driver.keystore")// 密钥库文件
            storePassword 'xxxxxxx'  //密码
            keyAlias 'com.xxx.xxx.xxx' //包名
            keyPassword 'xxxxxxxxx'
            v1SigningEnabled true
            v2SigningEnabled true
        }

    }
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
要实现SM2签名公钥导出为X509证书并从证书读取公钥,可以使用以下步骤: 1. 生成SM2密钥对,并使用公钥创建X509证书。 ```c++ #include <gmssl/sm2.h> #include <gmssl/x509.h> int main() { // 生成SM2密钥对 SM2_KEY sm2_key; SM2_keygen(&sm2_key); // 创建X509证书 X509_CERTIFICATE cert; x509_certificate_init(&cert); x509_set_version(&cert.tbs_certificate.version, X509_version_v3); x509_set_serial_number(&cert.tbs_certificate.serial_number, "123456789"); x509_set_subject(&cert.tbs_certificate.subject, "CN=Test,O=Test Org"); x509_set_issuer(&cert.tbs_certificate.issuer, "CN=Test CA,O=Test Org"); x509_set_validity(&cert.tbs_certificate.validity, "20210101000000Z", "20220101000000Z"); x509_set_subject_public_key_info(&cert.tbs_certificate.subject_public_key_info, &sm2_key.public_key); // 签名 x509_certificate_sign(&cert, &sm2_key, SM3); // 输出证书 uint8_t buf[4096]; size_t buflen = sizeof(buf); x509_certificate_to_der(&cert, buf, &buflen); printf("Certificate:\n"); for (size_t i = 0; i < buflen; i++) { printf("%02X", buf[i]); } return 0; } ``` 2. 从X509证书中读取公钥。 ```c++ #include <gmssl/x509.h> int main() { // 读取X509证书 X509_CERTIFICATE cert; uint8_t buf[4096]; size_t buflen = sizeof(buf); // 从文件中读取证书 FILE *fp = fopen("test.crt", "rb"); fread(buf, 1, sizeof(buf), fp); fclose(fp); x509_certificate_from_der(&cert, buf, sizeof(buf)); // 获取公钥 SM2_PUBLIC_KEY sm2_pubkey; x509_get_public_key(&cert.tbs_certificate.subject_public_key_info, &sm2_pubkey); return 0; } ``` 以上代码使用了GMSSL库的API来进行SM2密钥对的生成、X509证书的创建和读取,需要在编译时链接GMSSL库。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YOIO.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值