Dijital İmzaları Atama ve Doğrulama
Dijital imza, bir çalışma kitabı dosyasının geçerli olduğunu ve hiç kimsenin onu değiştirmediğini garanti eder. Microsoft Office paketi ile birlikte gönderilen SELFCERT aracını veya başka bir aracı kullanarak kişisel bir dijital imza oluşturabilirsiniz. Hatta bir dijital imza satın alabilirsiniz. Bir dijital imza oluşturduktan veya edindikten sonra, çalışma kitabınıza eklemelisiniz. Bir dijital imza eklemek, bir zarfı mühürlemekle benzerdir. Bir zarf mühürlenmişse, içeriğinin kimse tarafından bozulmadığı konusunda bir düzeyde güvenceye sahipsiniz demektir.
Aspose.Cells for Java API, yaygın speadsheet’leri imzalamak ve doğrulamak için com.aspose.cells.DigitalSignatureCollection ve com.aspose.cells.DigitalSignature sınıflarını sağlar.
Speadsheet’leri İmzalama
İmzalama işlemi yukarıda tartışılan bir sertifikaya ihtiyaç duyar. Sertifikanın yanı sıra, speadsheet’leri başarılı bir şekilde imzalamak için gerekli olan şifresi de olmalıdır.
Aşağıdaki kod parçası, Aspose.Cells for Java API’sını kullanarak bir elektronik tabloya imza atma işleminin kullanımını gösterir.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(SigningSpreadsheets.class); | |
// Create an instance of DigitalSignatureCollection | |
DigitalSignatureCollection signatures = new DigitalSignatureCollection(); | |
// Load the certificate into an instance of InputStream | |
InputStream inStream = new FileInputStream("d:/temp.pfx"); | |
// Create an instance of KeyStore with PKCS12 cryptography | |
KeyStore inputKeyStore = KeyStore.getInstance("PKCS12"); | |
// Use the KeyStore.load method to load the certificate stream and its password | |
inputKeyStore.load(inStream, KEYSTORE_PASSWORD.toCharArray()); | |
// Create an instance of DigitalSignature and pass the instance of KeyStore, password, comments and time | |
DigitalSignature signature = new DigitalSignature(inputKeyStore, KEYSTORE_PASSWORD, "test for sign", | |
DateTime.getNow()); | |
// Add the instance of DigitalSignature into the collection | |
signatures.add(signature); | |
// Load an existing spreadsheet using the Workbook class | |
Workbook workbook = new Workbook(dataDir + "unsigned.xlsx"); | |
// Set the signature | |
workbook.setDigitalSignature(signatures); | |
// Save the signed spreadsheet | |
workbook.save(dataDir + "signed.xlsx"); |
Tabloların Doğrulanması
Aşağıdaki kod parçası, Aspose.Cells for Java API kullanımını tablonun doğrulanması için göstermektedir.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getDataDir(ValidatingSpreadsheets.class); | |
// Load an existing spreadsheet in an instance of Workbook | |
Workbook workbook = new Workbook(dataDir + "signed.xlsx"); | |
// Retrieve the collection of digital signatures from the Workbook | |
DigitalSignatureCollection signatures = workbook.getDigitalSignature(); | |
// Loop over the collection of digital signatures | |
for (DigitalSignature signature : (Iterable<DigitalSignature>) signatures) { | |
// Check the signature status using the isValid property | |
System.out.println(signature.isValid()); | |
} |