You've already forked TrickyStore
mirror of
https://github.com/5ec1cff/TrickyStore.git
synced 2025-09-06 06:37:07 +00:00
fix wrong subject public key of hack leaf
This commit is contained in:
@@ -164,8 +164,8 @@ public final class CertHack {
|
|||||||
byte[] bytes = leaf.getExtensionValue(OID.getId());
|
byte[] bytes = leaf.getExtensionValue(OID.getId());
|
||||||
if (bytes == null) return caList;
|
if (bytes == null) return caList;
|
||||||
|
|
||||||
X509CertificateHolder holder = new X509CertificateHolder(leaf.getEncoded());
|
X509CertificateHolder leafHolder = new X509CertificateHolder(leaf.getEncoded());
|
||||||
Extension ext = holder.getExtension(OID);
|
Extension ext = leafHolder.getExtension(OID);
|
||||||
ASN1Sequence sequence = ASN1Sequence.getInstance(ext.getExtnValue().getOctets());
|
ASN1Sequence sequence = ASN1Sequence.getInstance(ext.getExtnValue().getOctets());
|
||||||
ASN1Encodable[] encodables = sequence.toArray();
|
ASN1Encodable[] encodables = sequence.toArray();
|
||||||
ASN1Sequence teeEnforced = (ASN1Sequence) encodables[7];
|
ASN1Sequence teeEnforced = (ASN1Sequence) encodables[7];
|
||||||
@@ -192,11 +192,11 @@ public final class CertHack {
|
|||||||
new X509CertificateHolder(
|
new X509CertificateHolder(
|
||||||
certificates.get(0).getEncoded()
|
certificates.get(0).getEncoded()
|
||||||
).getSubject(),
|
).getSubject(),
|
||||||
holder.getSerialNumber(),
|
leafHolder.getSerialNumber(),
|
||||||
holder.getNotBefore(),
|
leafHolder.getNotBefore(),
|
||||||
holder.getNotAfter(),
|
leafHolder.getNotAfter(),
|
||||||
holder.getSubject(),
|
leafHolder.getSubject(),
|
||||||
k.pemKeyPair.getPublicKeyInfo()
|
leafHolder.getSubjectPublicKeyInfo()
|
||||||
);
|
);
|
||||||
signer = new JcaContentSignerBuilder(leaf.getSigAlgName())
|
signer = new JcaContentSignerBuilder(leaf.getSigAlgName())
|
||||||
.build(k.keyPair.getPrivate());
|
.build(k.keyPair.getPrivate());
|
||||||
@@ -236,9 +236,9 @@ public final class CertHack {
|
|||||||
Extension hackedExt = new Extension(OID, false, hackedSeqOctets);
|
Extension hackedExt = new Extension(OID, false, hackedSeqOctets);
|
||||||
builder.addExtension(hackedExt);
|
builder.addExtension(hackedExt);
|
||||||
|
|
||||||
for (ASN1ObjectIdentifier extensionOID : holder.getExtensions().getExtensionOIDs()) {
|
for (ASN1ObjectIdentifier extensionOID : leafHolder.getExtensions().getExtensionOIDs()) {
|
||||||
if (OID.getId().equals(extensionOID.getId())) continue;
|
if (OID.getId().equals(extensionOID.getId())) continue;
|
||||||
builder.addExtension(holder.getExtension(extensionOID));
|
builder.addExtension(leafHolder.getExtension(extensionOID));
|
||||||
}
|
}
|
||||||
certificates.addFirst(new JcaX509CertificateConverter().getCertificate(builder.build(signer)));
|
certificates.addFirst(new JcaX509CertificateConverter().getCertificate(builder.build(signer)));
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user