精华内容
参与话题
问答
  • x509

    2017-09-15 10:08:14
    所有的X.509证书包含以下数据:1、X.509版本号:指出该证书使用了哪种版本的X.509标准,版本号会影响证书中的一些特定信息。目前的版本是3。2、证书持有人的公钥:包括证书持有人的公钥、算法(指明密钥属于哪种密码...

    X.509是一种非常通用的证书格式。所有的证书都符合ITU-T X.509国际标准,因此(理论上)为一种应用创建的证书可以用于任何其他符合X.509标准的应用。

    所有的X.509证书包含以下数据:
    1、X.509版本号:指出该证书使用了哪种版本的X.509标准,版本号会影响证书中的一些特定信息。目前的版本是3。
    2、证书持有人的公钥:包括证书持有人的公钥、算法(指明密钥属于哪种密码系统)的标识符和其他相关的密钥参数。
    3、证书的序列号:由CA给予每一个证书分配的唯一的数字型编号,当证书被取消时,实际上是将此证书序列号放入由CA签发的CRL(Certificate Revocation List证书作废表,或证书黑名单表)中。这也是序列号唯一的原因。
    4、主题信息:证书持有人唯一的标识符(或称DN-distinguished name)这个名字在 Internet上应该是唯一的。DN由许多部分组成,看起来象这样:
    CN=Bob Allen, OU=Total Network Security Division
    O=Network Associates, Inc.
    C=US
    这些信息指出该科目的通用名、组织单位、组织和国家或者证书持有人的姓名、服务处所等信息。
    5、证书的有效期:证书起始日期和时间以及终止日期和时间;指明证书在这两个时间内有效。
    6、认证机构:证书发布者,是签发该证书的实体唯一的CA的X.509名字。使用该证书意味着信任签发证书的实体。(注意:在某些情况下,比如根或顶级CA证书,发布者自己签发证书)
    7、发布者的数字签名:这是使用发布者私钥生成的签名,以确保这个证书在发放之后没有被撰改过。
    8、签名算法标识符:用来指定CA签署证书时所使用的签名算法。算法标识符用来指定CA签发证书时所使用的公开密钥算法和HASH算法。

     

     

     

     

     

     

     

     

    展开全文
  • X509 RFC5280规范

    2017-09-06 22:28:21
    X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC5280规范X509 RFC...
  • x509 x509证书 x509证书 x509证书x509证书
  • x509 CheckSignature参数

    2015-10-08 22:22:12
    <p>In the x509 library, there is a function called <code>CheckSignature</code>. I'm a bit lost as to what to pass into <code>signed</code>. What is it supposed to be? <p>The function is <pre><code>...
  • ds:X509Data> <ds:X509Certificate>MIIDUjCCAjqgAwIBAgIIBX96VBJzA1QwDQYJKoZIhvcNAQEFBQAwWjERMA8GA1UEAxMIUEdXU3Vi Q0ExEDAOBgNVBAoTB1NpZW1lbnMxEzARBgNVBAcTCkJyYXRpc2xhdmExETAPBgNVBAgTCFNsb3Zh ...
  • X509 certs support

    2020-12-01 20:23:08
    <div><p>The code I added allows the lib to support verify JWTs with X509 certificates. <p>For example, the keys provided by Google for verifying Firebase tokens. ...
  • keystore转x509pem工具

    热门讨论 2014-10-15 17:07:15
    在使用signapk工具签名时,是需要 x509.pem + pk8格式的证书,它是一个公私钥分开存放的格式,在电脑上生成的证书一般是以 keystore格式存放的,有时在证书签发机构申请的证书也是 keystore格式的。这时用signapk...
  • node-x509, 简单的X509证书分析器 node-x509 简单的X509证书分析器。安装从 NPM ( 推荐推荐): npm install x509从源代码生成和测试:sudo npm install -g node-gypnpm install
  • Error: Time:Fri Jan 19 15:11:55 2018 File:/home/guest/azure-iot-sdk-python/c/c-utility/src/x509_openssl.c Func:x509_openssl_add_credentials Line:255 failure loading private key cert Error: Time:Fri ...
  • <p>ServerSpec supports x509_certificate and x509_private_key, which is very useful to validate servers are being deployed the right certificate and key in integration testing, and in routine ...
  • - Add x509_verify.c x509_verify.h - Restrict cipherstest with static build only in CMake, since it changes to use internal function - Add regress x509_info.c - Update .gitignore for some files in ...
  • 在Go中解析X509证书

    2017-10-14 11:48:27
    KeyUsage: x509.KeyUsageCertSign | x509.KeyUsageKeyEncipherment | x509.KeyUsageDigitalSignature, BasicConstraintsValid:true, IsCA:true, DNSNames:[]string{"borscht.com","localhost"}, } derBytes,err...
  • Error: Time:Fri May 10 09:40:24 2019 File:/usr/sdk/src/c/c-utility/adapters/tlsio_openssl.c Func:tlsio_openssl_setoption Line:1505 unable to set x509 options more than once Error: Time:Fri May 10 09:...
  • Android签名证书 keystore jks pem x509

    万次阅读 2019-10-24 15:01:26
    Android签名证书 背景 因业务需求,经常与系统厂商打交道,大多需要厂商开放root权限 目前获取系统权限的总结有三种方式(均有实际应用) platform签名 root固件 (有su) 调用厂商封装好的系统权限的sdk ...

    Android签名证书

    背景

    因业务需求,经常与系统厂商打交道,大多需要厂商开放root权限

    目前获取系统权限的总结有三种方式(均有实际应用)

    1. platform签名
    2. root固件 (有su)
    3. 调用厂商封装好的系统权限的sdk

    后两者调试比较简单,不多做介绍. 针对第一点,厂商会提供两个文件

    ​ platform.pk8 保存private key 加密

    ​ platform.x509.pem X.509证书 存储数字证书,公钥信息还能存各种key

    但是这两种文件不能直接进行签名,需要调用

    java -jar signapk.jar platform.x509.pem platform.pk8 old.apk [new].apk
    

    Android Studio 生成apk,还需额外执行以上步骤,调试非常不方便,故想将pk8 和pem 转成通用的jks或者keystore的签名

    Note:

    android一般除了使用jarsigner签名,还有使用signapk 后者位于android源码,前者位于jdk中。两者使用的文件格式不同前者使用JKS,后者使用公钥+私钥是分开的

    signapk.jar 不是系统自带,需要额外下载

    环境配置

    下载 openssl
    在这里插入图片描述
    选择合适的文件下载安装,完成后配置环境变量
    在这里插入图片描述

    pem/pk8 转换jks/keystore

    keystore,jks本身是一个东西,没有区别;在eclipse上生成的是.keystore后缀,在andorid studio上生成的是.jks后缀;

    主要分三步

    1. pk8 私钥解密pem格式

      openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out platform.priv.pem -nocrypt
      
    2. 私钥通过公钥pem加密pk12

      openssl pkcs12 -export -in platform.x509.pem -inkey platform.priv.pem -out platform.pk12 -name [别名]
      

      需要输入两次密码

    3. 通过java的keytool 工具生成 keystore

      keytool -importkeystore -destkeystore platform.jks -srckeystore platform.pk12 -srcstoretype PKCS12 -srcstorepass [密码] -alias [别名]
      

      别名需要跟步骤2的一致,同样输入两次密码

    windows 下合并后如下

    openssl pkcs8 -in platform.pk8 -inform DER -outform PEM -out platform.priv.pem -nocrypt
    openssl pkcs12 -export -in platform.x509.pem -inkey platform.priv.pem -out platform.pk12 -name [别名]
    keytool -importkeystore -destkeystore platform.jks -srckeystore platform.pk12 -srcstoretype PKCS12 -srcstorepass [密码] -alias [别名]
    pause
    

    Android Studio 项目使用jks

    android {
     signingConfigs {
            MySignName {
                keyAlias "[别名]"
                keyPassword "[密码]"
                storeFile file('[jks路径]')
                storePassword "[密码]"
            }
        }
        
     buildTypes {
            debug {
             		signingConfig signingConfigs.MySignName
            }
            release{
                 signingConfig signingConfigs.MySignName
            }
       }  
    }
    

    现在Android Studio 调试安装都是platform签名

    扩展 jks 转pem/pk8

    主要分五步

    1. java keytool 转成 pkcs12格式

      keytool   -importkeystore -srckeystore debug.keystore   -destkeystore tmp.p12 -srcstoretype JKS         -deststoretype PKCS12
      
    2. pkcs12 dump pem格式

      openssl pkcs12 -in tmp.p12 -nodes -out tmp.rsa.pem
      

      dump的文件格式

      Bag Attributes
          friendlyName: [别名]
          localKeyID: 54 69 6D 65 20 31 35 37 31 38 39 30 30 31 35 30 30 30 
      Key Attributes: <No Attributes>
      -----BEGIN PRIVATE KEY-----
      ....
      -----END PRIVATE KEY-----
      Bag Attributes
          friendlyName: [别名]
          localKeyID: 54 69 6D 65 20 31 35 37 31 38 39 30 30 31 35 30 30 30 
      subject=C = US, ST = California, L = Mountain View, O = Android, OU = Android, CN = Android, emailAddress = android@android.com
      issuer=C = US, ST = California, L = Mountain View, O = Android, OU = Android, CN = Android, emailAddress = android@android.com
      
      -----BEGIN CERTIFICATE-----
      ...
      -----END CERTIFICATE-----
      
    3. 复制“BEGIN CERTIFICATE” “END CERTIFICATE” 到(新建个文件) cert.x509.pem

      dos命令不好实现,建议采用bash

      grep -zoe '-----BEGIN CERTIFICATE-----.*-----END CERTIFICATE-----' tmp.rsa.pem>cert.x509.pem
      
    4. 复制 “BEGIN RSA PRIVATE KEY” “END RSA PRIVATE KEY” 到(同上) private.rsa.pem

      dos命令不好实现,建议采用bash

      grep -zoe '-----BEGIN CERTIFICATE-----.*-----END CERTIFICATE-----' tmp.rsa.pem>private.rsa.pem
      
    5. 生成pk8格式的私钥

      openssl pkcs8 -topk8 -outform DER -in   private.rsa.pem -inform PEM -out private.pk8 -nocrypt
      

      至此已经生成pem pk8 格式的两个签名文件

    参考

    .pem和.pk8是什么文件?

    签名证书keystore,jks,pk8,x509.pem

    keystore文件转换格式为pk8+x509.pem

    展开全文
  • keystore转x509pem+pk8工具

    热门讨论 2015-01-17 10:24:09
    对于android开发人员来说,一般只会用到keystore,但有些特殊情况(比如说做自动打包工具)就需要用signapk工具签名,这时需要的就是x509pem+pk8了。 但是网上用keystore生成x509pem+pk8的教程实在太复杂,分了好几...
  • 生成私钥的时候报这个错,在本地启动后调用没问题,部署war包后调用报错, java.lang.NoClassDefFoundError: sun/security/x509/X509CertImpl
  • <p>But <strong>x509.ParsePKIXPublicKey(block.Bytes)</strong> return error: <p>asn1: structure error: tags don't match (16 vs {class:0 tag:2 length:257 isCompound:false}) {optional:false explicit:...
  • X509证书解析工具

    热门讨论 2015-06-11 15:10:02
    该例程是本人编写的X509证书解析工具,分别使用Windows CryptoAPI和OpenSSL库实现,两套接口的实现代码封装成了两个DLL。本例程支持DER和PEM格式的X509证书(*.cer),也支持PKCS#7格式的p7b证书文件,还支持PKCS#12...
  • <div><p><code>X509_Certificate::operator=()</code> did only copy private members, but not that of the <code>X509_Object</code> base class. That resulted in zombie certificates in the following use...
  • 在Go中检测根x509证书

    2017-05-16 14:34:53
    <p>I have an X509 certificate obtained using something like this: <pre><code>block, additionalData := pem.Decode([]byte(str)) cert, err := x509.ParseCertificate(block.Bytes) </code></pre> <p>I'd ...
  • npm WARN optional SKIPPING OPTIONAL DEPENDENCY: x509.3.2 (node_modules/solid-server/node_modules/x509): npm WARN optional SKIPPING OPTIONAL DEPENDENCY: x509.3.2 install: `node-gyp rebuild` npm...
  • x509_certificate trials/x509/cert.pem ✔ should be certificate ✔ should be valid ✔ fingerprint should eq "62b137bdf427e7273dc2e487877b3033e4c8ce17" ✔ signature_algorithm should eq "...
  • ks2x509.rar

    2019-10-21 17:43:25
    android签名文件keystore转pk8和x509.pem,pk8和x509.pem可用于signapk.jar签名时使用 ks2x509.jar 使用方法:java -jar ks2x509.jar 要转换的.keystore 用户名 密码 signapk.jar使用方法:java -jar signapk.jar **...
  • /Users/quarnster/code/3rdparty/go/src/pkg/crypto/x509/verify.go:209:10: invalid operation: c (variable of type *x509.Certificate) has no field or method systemVerify /Users/quarnster/code/3rdparty/go/...
  • <p>this is a feature proposal/request for the <code>x509_certificate</code> resource. <p>Currently it expects the cert to be available on a filesystem of SUT. <p>This might not be possible due to ...
  • <p>There is an issue, golang/go#8265 that references <a href="https://github.com/golang/go/blob/7360638da09bed30bb32c183c9264f7f9f0bb8c9/src/crypto/x509/x509.go#L912">this section</a> of the x509 code...
  • <p>I'm trying to parse an ECDSA secp384r1 curve key using Go's crypto/x509 package using the following code (<a href="https://play.golang.org/p/opFLBMaKhDv" rel="nofollow noreferrer">...
  • i2d_re_X509_tbs not declared

    2020-11-20 14:42:54
    i2d_re_X509_tbs(x509_, &der_buf); ^ log/cert.cc: In member function 'cert_trans::Cert::Status cert_trans::TbsCertificate::DerEncoding(std::string*) const': log/cert.cc:579:51: error: &#...
  • wcf x509 证书

    2012-11-28 23:22:15
    wcf安全,最简单就是使用x509证书,这个文档教你如何生成证书,如何在wcf中使用证书,适用于wcf初学者。

空空如也

1 2 3 4 5 ... 20
收藏数 9,212
精华内容 3,684
关键字:

x509