private void btnSign_Click(object sender, RoutedEventArgs e) { lblConfirmation.Visibility = Visibility.Hidden; // Show loading message lblLoading.Visibility = Visibility.Visible; Sign sign = new Sign(); byte[] dummyPDFBytes = File.ReadAllBytes(fullPath + FILE_NAME); byte[] signedDataBytes = null; bool signedSuccessfully = false; try { signedDataBytes = sign.DoSign(dummyPDFBytes, SIGN_LABEL); certificateBytes = rd.GetCertificateSignatureFile(); integrity = new Integrity(); signedSuccessfully = integrity.Verify(dummyPDFBytes, signedDataBytes, certificateBytes); } catch (EIDNotFoundException eidnfe) { ShowMessageBoxEIDNotFound(eidnfe); } catch (VerificationException ve) { MessageBox.Show(ve.Message, "Verificatiefout", MessageBoxButton.OK, MessageBoxImage.Error); } catch (SignatureCanceledException sce) { MessageBox.Show(sce.Message, "Digitale handtekening geannuleerd", MessageBoxButton.OK, MessageBoxImage.Warning); } finally { HideLoadingMessage(); } if (signedDataBytes != null && signedSuccessfully) { signed = sign.SignPhysically(fullPath, firstnames, surname, integrity.SerialNumber); ReadPDF(); HideLoadingMessage(); if (signed) { lblConfirmation.Content = $"Digitaal getekend op {DateTime.Now}."; lblConfirmation.Visibility = Visibility.Visible; } } }
public void SignSignature() { // Sign Sign signTest = new Sign("beidpkcs11.dll"); byte[] testdata = new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; byte[] signeddata = signTest.DoSign(testdata, "Signature"); Assert.IsNotNull(signeddata); // Verification ReadData dataTest = new ReadData("beidpkcs11.dll"); Integrity integrityTest = new Integrity(); Assert.False(integrityTest.Verify(testdata, signeddata, dataTest.GetCertificateAuthenticationFile())); Assert.True(integrityTest.Verify(testdata, signeddata, dataTest.GetCertificateSignatureFile())); }
public void SignSignature() { // Sign Sign signTest = new Sign("beidpkcs11.dll"); byte[] testdata = new byte[] { 0, 1, 2, 3, 4, 5, 6, 7, 8 }; byte[] signeddata = signTest.DoSign(testdata, "Signature"); Assert.IsNotNull(signeddata); // Verification ReadData dataTest = new ReadData("beidpkcs11.dll"); Integrity integrityTest = new Integrity(); Assert.IsFalse(integrityTest.Verify(testdata, signeddata, dataTest.GetCertificateAuthenticationFile())); Assert.IsTrue(integrityTest.Verify(testdata, signeddata, dataTest.GetCertificateSignatureFile())); }
static void Main(string[] args) { Settings.SetLanguage(Settings.Language.fr); ReadData data = new ReadData(); //System.Security.Cryptography.X509Certificates.X509Certificate2 cert = new System.Security.Cryptography.X509Certificates.X509Certificate2(data.GetCertificateAuthenticationFile()); /* * * // Parsed from data file * * data.GetAndTestIdFile(); * * Console.WriteLine(data.GetFirstnames()); * * Console.WriteLine(data.GetSurname()); * * Console.WriteLine(data.GetDateOfBirth()); * * //Console.WriteLine(data.GetBasicKeyHash()); // Applet 1.8 * * Console.WriteLine(data.GetBrexitMention1()); * * Console.WriteLine(data.GetBrexitMention2()); * * Console.WriteLine(data.GetCardNumber()); * * Console.WriteLine(data.GetChipNumber()); * * Console.WriteLine(data.GetDateAndCountryOfProtection()); * * Console.WriteLine(data.GetDocumentType()); * * Console.WriteLine(data.GetDuplicata()); * * Console.WriteLine(data.GetEmployerVat1()); * * Console.WriteLine(data.GetEmployerVat2()); * * Console.WriteLine(data.GetFirstLetterOfThirdGivenName()); * * Console.WriteLine(data.GetGender()); * * Console.WriteLine(data.GetIssuingMunicipality()); * * Console.WriteLine(data.GetLocationOfBirth()); * * Console.WriteLine(data.GetMemberOfFamily()); * * Console.WriteLine(data.GetNationality()); * * Console.WriteLine(data.GetNationalNumber()); * * Console.WriteLine(data.GetNobility()); * * Console.WriteLine(data.GetPhotoHash()); * * Console.WriteLine(data.GetRegionalFileNumber()); * * Console.WriteLine(data.GetSpecialOrganization()); * * Console.WriteLine(data.GetSpecialStatus()); * * Console.WriteLine(data.GetValidityBeginDate()); * * Console.WriteLine(data.GetValidityEndDate()); * * Console.WriteLine(data.GetWorkPermitMention()); * * * // Parsed from address file * * Console.WriteLine(data.GetAddressMunicipality()); * * Console.WriteLine(data.GetAddressStreetAndNumber()); * * Console.WriteLine(data.GetAddressZip()); * * // Card info * * Console.WriteLine(data.GetCardSerialNumber()); * * Console.WriteLine(data.GetCardAppletVersion()); * * Console.WriteLine(data.GetCardAppletIntVersion()); * * Console.WriteLine(data.GetCardAppletLifeCycle()); * * Console.WriteLine(data.GetCardCompCode()); * * Console.WriteLine(data.GetCardGlobOSVersion()); * * Console.WriteLine(data.GetCardKeyExchangeVersion()); * * Console.WriteLine(data.GetCardOSNumber()); * * Console.WriteLine(data.GetCardOSVersion()); * * Console.WriteLine(data.GetCardPKCS15Version()); * * Console.WriteLine(data.GetCardPKCS1Support()); * * Console.WriteLine(data.GetCardSoftMaskNumber()); * * Console.WriteLine(data.GetCardSoftMaskVersion()); * * //Console.WriteLine(data.GetCardSignature()); // NOT YET AVAILABLE */ // Test electronic signature Integrity integrity = new Integrity(); Sign signer = new Sign(); string ASigner = "Hello World"; var signed = signer.DoSign(Encoding.ASCII.GetBytes(ASigner), "Signature"); var verif = integrity.Verify(Encoding.ASCII.GetBytes(ASigner), signed, data.GetCertificateSignatureFile()); Console.ReadLine(); }