2016-03-30 3 views
2

Кто-нибудь знает, как записать сертификат атрибута в файл. А также прочитать байт [] и превратить это в сертификат атрибута?BouncyCastle AttributeCertificate to file и наоборот

+0

вы можете посмотреть в [X509AttributeCertificateHolder] (https://www.bouncycastle.org/docs/pkixdocs1.4/org/bouncycastle/cert/X509AttributeCertificateHolder.html) – Rhayene

+1

Спасибо, был в состоянии решить эту проблему. –

+1

не стесняйтесь отвечать на свой вопрос – Rhayene

ответ

0

Можно использовать кодировку сертификата:

X509V2AttributeCertificate certitificate = new X509V2AttributeCertificate(attributeCertificateHolder.getEncoded()); 

// Store to file 
String fileName = "test.txt"; 
FileOutputStream fos = new FileOutputStream(fileName); 
fos.write(certitificate.getEncoded()); 
fos.close(); 

// Read from file 
byte[] readCertificate = Files.readAllBytes(new File(fileName).toPath()); 
X509V2AttributeCertificate decodedCertificate = new X509V2AttributeCertificate(readCertificate); 

Там существует еще один вариант, чтобы прочитать массив байтов и декодировать его в сертификат:

X509AttrCertParser parser = new X509AttrCertParser(); 
parser.engineInit(new FileInputStream(fileName)); 
X509AttributeCertificate certificate = (X509AttributeCertificate) parser.engineRead(); 

В конце концов есть проблема с X509AttributeCertificate, потому что она устарела. До сих пор я не нашел решения для этого. Подсказки для этого решения взяты из Bouncycastle: X509CertificateHolder to X509Certificate?.