public void readPassportBAC() { //OMNIKEY CardMan 5x21-CL 0 Desko.EPass.Passport passport = Desko.EPass.Framework.Instance.GetPassport("DESKO GmbH SmartCard Reader 0", Desko.EPass.Types.ShareMode.Exclusive); // Desko.EPass.Passport passport = Desko.EPass.Framework.Instance.GetPassport(cihaz, Desko.EPass.Types.ShareMode.Exclusive); try { if (passport == null) { //Console.WriteLine("Error! Passport is null"); MessageBox.Show("DESKO YOK"); return; } try { // Enter printed MRZ for accessing the passport // Console.WriteLine("Enter MRZ of passport..."); String mrz = richTextBox1.Text; //Console.WriteLine(""); // Perform initialization and authentication passport.Initialize(Desko.EPass.Types.ShareMode.Direct); passport.Authenticate(Desko.EPass.Types.AuthenticationType.BAC, (mrzl[0].ToString() + mrzl[1].ToString()), Desko.EPass.Types.SecretType.MRZ); // Print passport details // Console.WriteLine("EAC Support: {0} / AccessProtocol: {1} / ATR: {2}", passport.PassportInformation.EacVersion, passport.PassportInformation.AccessProtocol, passport.GetATR()); // Print available datagroups (stored in File COM) int[] datagroups = passport.GetDatagroups(Desko.EPass.Types.FileType.COM); // Console.WriteLine("Available datagroups:"); for (int i = 0; i < datagroups.Length; i++) { //Console.Write("{0}{1}", datagroups[i], (i == datagroups.Length - 1 ? System.Environment.NewLine + System.Environment.NewLine : ",")); label14.Text += datagroups[i].ToString() + "--"; } // Read and print MRZ of RFID chip from DG1 String chipMrz = passport.GetMrz(1); // Console.WriteLine("MRZ on chip:{0},{1},{2}", System.Environment.NewLine, chipMrz, System.Environment.NewLine); Clipboard.SetText(chipMrz); MessageBox.Show("Test"); // Read and save facial image of RFID chip from DG2 // Could be more images in one DG -> choose the first image of array Desko.EPass.BiometricImage chipImg = (passport.GetImages(2))[0]; if (chipImg != null) { // Console.WriteLine("Facial image on chip:"); //Console.WriteLine("Format: {0} / Subtype: {1}", chipImg.Format, chipImg.Subtype); // Convert to PNG chipImg = Desko.EPass.Framework.Instance.ConvertImage(chipImg, Desko.EPass.Types.ImageFormat.Png); // BiometricImage contains a System.Drawing.Image... System.Drawing.Image img = chipImg.Image; // ... with this System.Drawing.Image object storing is made straightforward img.Save(Path.Combine(Path.GetTempPath(), "chipImage.png")); pictureBox1.Image = img; //label2.Text = passport.GetPersonalDetails().FullName; //label3.Text = passport.GetPersonalDetails().PlaceOfBirth; //label4.Text = passport.GetPersonalDetails().PersonalNumber; //label5.Text = passport.GetPersonalDetails().DocNumber; //label6.Text = passport.GetPersonalDetails().Profession; //label7.Text = passport.GetPersonalDetails().PermanentAddress; //label9.Text = passport.GetPersonalDetails().DateOfBirth; //label10.Text = passport.PassportInformation.EacVersion.ToString(); //label11.Text = passport.PassportInformation.AccessProtocol.ToString(); ////label12.Text = passport.GetDocumentDetails().IssuingAuthority; //label13.Text = passport.GetDocumentDetails().DateOfIssue; // MessageBox.Show(passport.GetPersonalDetails().DateOfBirth.ToString()); //MessageBox.Show(passport.GetPersonalDetails().FullName); label25.Text = passport.GetPersonalDetails().FullName.ToString(); // label26.Text= passport.GetPersonalDetails().OtherNames.ToString(); label27.Text = passport.GetPersonalDetails().PersonalNumber.ToString(); byte[] sonuc = passport.ReadDatagroup(11); string result = System.Text.Encoding.UTF8.GetString(sonuc); richTextBox3.Text = result; //MessageBox.Show(passport.PassportInformation.EacVersion.ToString()); } } finally { passport.Release(); } } catch (Exception m) { MessageBox.Show(m.Message); } }
private void button3_Click(object sender, EventArgs e) { try { Desko.EPass.Passport passport = Desko.EPass.Framework.Instance.GetPassport("DESKO GmbH SmartCard Reader 0", Desko.EPass.Types.ShareMode.Exclusive); passport.Initialize(Desko.EPass.Types.ShareMode.Shared); string fullmrz = mrzl[0] + mrzl[1]; string gercsca = @"C:\Users\hayreddin.bas\Documents\PASAPORT_SERTIFIKA_EGM_CALISMA\PROD\CSCAV1DER.cer"; string gercscacer = @"C:\Users\hayreddin.bas\Documents\PASAPORT_SERTIFIKA_EGM_CALISMA\PROD\CSCAV1.cer"; string gercscacrt = @"C:\Users\hayreddin.bas\Documents\PASAPORT_SERTIFIKA_EGM_CALISMA\PROD\CSCAV1DER.crt"; string oldcsca = @"C:\Users\hayreddin.bas\Desktop\tubitak toplantı\CSCA-2016\CSCA2016DER.cer"; string testyencsca = @"C:\Users\hayreddin.bas\Desktop\keys\pasaport sertifikaları\TEST\TESTCSCADER.cer"; string link = @"D:\dışişleri\Link.cer"; string bulg = @"C:\Users\hayreddin.bas\Downloads\bg_csca_16042014\bulg.cer"; string certson = @"C:\Users\hayreddin.bas\Desktop\RSA PROD\RSADERCSCA.cer"; string named = @"C:\Users\hayreddin.bas\Documents\muhammet-CSCALAR\csca - named.der"; string expl = @"C:\Users\hayreddin.bas\Documents\muhammet-CSCALAR\csca - explicit.der"; string CSCA_SON = @"C:\Users\hayreddin.bas\Desktop\keys\pasaport sertifikaları\PROD\CSCATR_S1.cer"; string Link_Son = @"C:\Users\hayreddin.bas\Desktop\keys\pasaport sertifikaları\PROD\CSCA-link-certificate2016-2018.crl"; string DVCA = @"C:\Users\hayreddin.bas\Documents\silnecekprod\TRDVCAEPASS.cvc"; string iscert = @"C:\Users\hayreddin.bas\Documents\yeni_is\16.cvc"; string is_key = @"C:\Users\hayreddin.bas\Documents\yeni_is\pk2.pkcs8"; Desko.EPass.Framework fr = new Desko.EPass.Framework(); fr.TerminalAuthenticationMode = Desko.EPass.Types.TerminalAuthenticationMode.LocalStorage; fr.PassiveAuthenticationMode = Desko.EPass.Types.PassiveAuthenticationMode.LocalStorage; // Desko.EPass.Framework.Instance.PassiveAuthenticationMode = Desko.EPass.Types.PassiveAuthenticationMode.LocalStorage; //Desko.EPass.Framework.Instance.TerminalAuthenticationMode = Desko.EPass.Types.TerminalAuthenticationMode.LocalStorage; //TerminalType type = new TerminalType(); //type = TerminalType.AuthenticationTerminal; //device.AbortLongTermOperation(); Desko.EPass.Certificates.Certificate CSCA_SONN = new Desko.EPass.Certificates.X509Certificate(StreamFile(gercsca)); //success Desko.EPass.Certificates.Certificate csca_expl = new Desko.EPass.Certificates.X509Certificate(StreamFile(expl)); //success Desko.EPass.Certificates.Certificate CSCA_named = new Desko.EPass.Certificates.X509Certificate(StreamFile(named)); //success Desko.EPass.Certificates.Certificate DVCA_cert = new Desko.EPass.Certificates.CvCertificate(StreamFile(DVCA)); Desko.EPass.Certificates.CvCertificate is_certf = new Desko.EPass.Certificates.CvCertificate(StreamFile(iscert)); Desko.EPass.CertificateStore.Instance.AddCertificate(CSCA_SONN); Desko.EPass.CertificateStore.Instance.AddCertificate(DVCA_cert); Desko.EPass.CertificateStore.Instance.AddCertificate(is_certf); byte[] pk1 = FileToByteArray(is_key); //Desko.EPass.Certificates.CvCertificate cert = new Desko.EPass.Certificates.CvCertificate(pk); // Desko.EPass.Certificates.CvCertificate cert1 = new Desko.EPass.Certificates.CvCertificate(pk1); // Desko.EPass.CertificateStore.Instance.AddCertificate(cert1); is_certf.SetCertificateKey(pk1); //successs Desko.EPass.CertificateStore.Instance.SaveCertificateDatabase("certdb1"); // Desko.EPass.CertificateStore.Instance.LoadCertificateDatabase("certdb1"); // byte[] pk = FileToByteArray(testcert4); //certificate1.GetChildCertificates(); // string pks = System.Text.Encoding.UTF8.GetString(pk); // text_mrz = "P<TURKARADEMIR<<APTI<<<<<<<<<<<<<<<<<<<<<<<<PL19827683TUR6306243M200214512345678901<<<00"; passport.Authenticate(Desko.EPass.Types.AuthenticationType.BAC, fullmrz, Desko.EPass.Types.SecretType.MRZ); //-->BAC // passport.PerformTerminalAuthentication(); passport.PerformChipAuthentication(); passport.Authenticate(Desko.EPass.Types.AuthenticationType.PACE, fullmrz, Desko.EPass.Types.SecretType.MRZ);//-->SAC label11.Text = passport.PassportInformation.AccessProtocol.ToString(); //45947186788 // passport.SetMaxAPDUSize(512); //////string aa = passport.PassportInformation.AccessProtocol.ToS0ö2tring();label26 //--------------------------BUARADA SUCCESS DÖNMESİ LAZIM------------------------- // MessageBox.Show(aa); // passport.PerformTerminalAuthentication(); // List<Desko.EPass.Certificates.RawCertificate> cers = new List<Desko.EPass.Certificates.RawCertificate>(); //cers.Add(new De); Desko.EPass.FileAuthenticationResults result = passport.CheckFileSignature(Desko.EPass.Types.FileType.SOD); MessageBox.Show(result.FileSignatureCheck.ToString()); //label15.Text ="Cert sign check="+ result.DocumenttSignerCertificateSignatureCheck.ToString(); label19.Text = "DOCUMENTSİGNERTRUESTSTATUS=" + result.DocumentSignerTrustStatus.ToString(); label20.Text = "COUNTRY SIGNER CERTIFICATE VALIDTY: " + result.CountrySignerCertificateValidity.ToString(); label21.Text = "DOCUMENT SIGNER CERT VALIDTY:" + result.DocumentSignerCertificateValidity.ToString(); label22.Text = "DOCUMENT SIGNER TRUST STAT:" + result.DocumentSignerTrustStatus.ToString(); label23.Text = "FILE SIGNATURE CHECK: " + result.FileSignatureCheck.ToString();; Desko.EPass.Certificates.RawCertificate certificate = passport.GetDocumentSignerCertificate(Desko.EPass.Types.FileType.SOD); File.WriteAllBytes("certDS2NewPROD", certificate.RawData); passport.Release(); } catch (Exception m) { MessageBox.Show(m.Message); } }