Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 74 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
74
Dung lượng
724,51 KB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TRẦN DANH ĐẠI NGHIÊN CỨU CHỮ KÝ SỐ TRONG ỨNG DỤNG QUẢN LÝ TÀI LIỆU LƢU TRỮ QUỐC GIA LUẬN VĂN HÀ NỘI - 2015 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ TRẦN DANH ĐẠI NGHIÊN CỨU CHỮ KÝ SỐ TRONG ỨNG DỤNG QUẢN LÝ TÀI LIỆU LƢU TRỮ QUỐC GIA Ngành : Công nghệ thông tin Chuyên ngành: Kỹ thuật phần mềm Mã số LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN Ngƣời hƣớng dẫn khoa học: TS HỒ VĂN HƢƠNG HÀ NỘI - 2015 LỜI CAM ĐOAN Với mục đích học tập, nghiên cứu để nâng cao kiến thức, trình độ chuyên môn nên làm luận văn cách nghiêm túc hoàn toàn trung thực Trong toàn nội dung luận văn, điều trình bày cá nhân tôi tổng hợp từ nhiều nguồn tài liệu Đã nêu phần tài liệu tham khảo cuối luận văn Tôi xin cam đoan điều thật, sai, tơi xin chịu hồn tồn trách nhiệm Hà Nội, ngày tháng năm 2015 Học viên Trần Danh Đại LỜI CẢM ƠN Để hoàn thành luận văn có kiến thức ngày hơm nay, xin gửi lời cảm ơn đến Ban Giám hiệu tồn thể thầy khoa Cơng nghệ thông tin - Trường Đại học Công nghệ - Đại học Quốc gia Hà Nội tận tình giảng dạy, truyền đạt kiến thức kinh nghiệm quý báu cho tơi tồn thể học viên cao học khóa 19 suốt q trình học tập nghiên cứu trường Tơi xin bày tỏ lịng biết ơn sâu sắc đến thầy giáo hướng dẫn TS Hồ Văn Hương - Ban Cơ yếu Chính phủ tận tình hướng dẫn, quan tâm động viên tơi q trình tìm hiểu, nghiên cứu, xây dựng hồn thành luận văn Tơi xin bày tỏ lịng biết ơn đến Ban Giám đốc Trung tâm Tin học, Ban Giám đốc Trung tâm Lưu trữ quốc gia nhiệt tình dẫn cung cấp yêu cầu thực tế toán Những kiến thức quan trọng giúp ích cho tơi nhiều q trình cài đặt thử nghiệm Mặc dù cố gắng hoàn thành luận văn thời gian khả nhiều hạn chế nên luận văn khó tránh khỏi sai sót định, mong thơng cảm dẫn, góp ý thầy bạn bè để luận văn hoàn thiện Cuối xin gửi lời chúc sức khỏe thành đạt tới tất quý thầy cô, quý đồng nghiệp gia đình bạn bè Học viên Trần Danh Đại MỤC LỤC Lời mở đầu Chương 1: Tổng quan an tồn thơng tin, khảo sát thực trạng tài liệu Trung tâm lưu trữ quốc gia 1.1.Tổng quan an tồn thơng tin 1.2.An tồn thơng tin tài liệu lưu trữ q 1.3.Khảo sát thực trạng tài liệu Trun 1.3.1 Giới thiệu Trung tâm Lưu trữ quốc gia 1.3.2 Khảo sát tài liệu lưu trữ Trung tâm Lưu trữ quốc gia 1.3.3 Tổng hợp sở liệu Trung tâm Lưu trữ quốc gia 1.3.4 Tổng hợp tài liệu số hóa Trung tâm Lưu trữ quốc gia Chương 2: Nghiên cứu cở sở lý thuyết chữ ký số ứng dụng quản lý tài liệu lưu trữ quốc gia 2.1.Mã hóa liệu 2.1.1 Khái niệm mật mã 2.1.2 Phân loại hệ mật mã 2.2.Hàm băm mật mã 2.2.1 Định nghĩa 2.2.2 Phân loại hàm băm 2.2.3 Họ hàm băm SHA 2.3.Chữ ký số 2.3.1 Định nghĩa 2.3.2 Các ưu điểm chữ ký số 2.3.3 Thực chữ ký số khóa cơng khai 2.3.4 Chữ ký số RSA 2.3.5 Lược đồ ký số RSA 2.3.6 Lược đồ xác thực chữ ký RSA 2.3.7 Đánh giá độ chi phí, tốc độ độ an tồn thuật tốn RSA 2.4.Hạ tầng khóa cơng khai (PKI) 2.4.1 Giới thiệu PKI 2.4.2 Chức PKI 2.4.3 Các thành phần PKI 2.4.4 Mơ hình hoạt động PKI 2.4.5 Các chức PKI 2.4.6 Các mơ hình PKI 2.5 Chứng thư số 2.5.1 Giới thiệu chứng thư số 2.5.2 Các thành phần chứng thư: 2.5.3 Ứng dụng chứng thư số 2.6 File định dạng PDF chữ ký số Chương 3: Xây dựng ứng dụng ký số cho tài liệu lưu trữ quốc gia 3.1 Xây dựng yêu cầu ứng dụng chữ ký số cho tài liệu lưu trữ quốc gia4 3.1.1 Xây dựng toán chuyển tài liệu từ file định dạng JPEG sang định dạng PDF 3.2 Lựa chọn hàm băm đại diện chữ ký số cho tài liệu lưu trữ 3.3 Xây dựng ứng dụng ký số tài liệu 3.3.1 Quá trình ký số file tài liệu 3.3.2 Q trình mã hóa 3.3.3 Quá trình giải mã: 3.3.4 Quá trình xác thực 3.3.5 Yêu cầu ứng dụng xây dựng 3.3.6 Một số hình ảnh ứng dụng ký số 4.Kết luận Tài liệu tham khảo 6.Phụ lục: Mã nguồn chương trình DANH MỤC HÌNH VẼ, ĐỒ THỊ Bảng 1.1: Bảng tổng hợp liệu đặc tả Trung tâm Lưu trữ quốc gia Bảng 1.2: Bảng tổng hợp liệu toàn văn Trung tâm Lưu trữ quốc gia Bảng 2.1: Quá trình mã hóa giải mã Bảng 2.2: Mơ hình hệ thống mã hố khố bí mật Bảng 2.3: Mơ hình hệ thống mã hố với khố cơng khai Bảng 2.4: Ảnh minh họa làm việc hàm băm Bảng 2.5: Các tính chất thuật toán băm Bảng 2.6: Lược đồ ký số RSA Bảng 2.7: Lược đồ xác thực chữ ký RSA Bảng 2.8: Mơ hình PKI Bảng 2.9: Quy trình đăng ký chứng thư số Bảng 3.1: Mơ hình mã hóa file Bảng 3.2: Mơ hình xác thực Bảng 3.3: Giao diện ứng dụng Bảng 3.4: Chức chuyển đổi file JPEG sang PDF ký số tài liệu Bảng 3.5: Giao diện chọn chứng thư số tùy chọn hình ảnh đại diện Bảng 3.6: Lựa chọn hình ảnh đại diện Bảng 3.7: Lựa chọn chứng thư để ký Bảng 3.8: Tùy chọn mã hóa liệu STT Từ viết tắt CVTLTNN TTLTQG TLLT PKI CA CRL OCSP SSL PKCS 10 PIN 11 MAC 12 OCSP LỜI MỞ ĐẦU Tài liệu lưu trữ quốc gia di sản văn hố dân tộc, có giá trị trị, kinh tế, quốc phịng, an ninh, ngoại giao, văn hóa, giáo dục, khoa học cơng nghệ hình thành q trình hoạt động quan, tổ chức, cá nhân gia đình, dịng họ tiêu biểu Nó có giá trị đặc biệt nghiệp xây dựng bảo vệ tổ quốc Việt Nam xã hội chủ nghĩa Việc ứng dụng công nghệ thông tin vào công tác quản lý tài liệu lưu trữ giúp việc quản lý, nâng cao tuổi thọ tài liệu gốc phục vụ nhanh chóng, kịp thời yêu cầu tra cứu tài liệu lưu trữ lúc, nơi Muốn phải chuyển tài liệu từ dạng truyền thống sang tài liệu lưu trữ dạng điện tử (tài liệu số) Khi chuyển sang tài liệu lưu trữ điện tử, tài liệu phải phải bảo đảm tính xác thực, tính tồn vẹn, qn, an tồn thơng tin, tính chống chối bỏ, có khả truy cập chuyển đổi theo thời gian môi trường điện tử từ tài liệu tạo lập Hiện nay, Trung tâm Lưu trữ quốc gia số hoá 12 triệu file tài liệu, nhiên tất hệ thống liệu chưa áp kỹ thuật để đảm bảo tính tồn vẹn xác thực liệu tính bảo mật tài liệu dẫn đến tình trạng sai lệch giả mạo liệu xảy đưa vào khai thác sử dụng Vì vậy, việc nghiên cứu ứng dụng chữ ký số quản lý tài liệu lưu trữ quốc gia đáp ứng nhu cầu đòi hỏi cấp thiết quản lý khai thác tài liệu điện tử Xuất phát từ lý lựa chọn đề tài “Nghiên cứu chữ ký số ứng dụng quản lý tài liệu lưu trữ quốc gia.” Ngoài phần mở đầu, kết luận danh mục tài liệu tham khảo luận văn kết cấu thành chương: Chƣơng 1: Tổng quan an tồn thơng tin, khảo sát thực trạng tài liệu lưu trữ Trung tâm Lưu trữ quốc gia Trong chương trình bày tổng quan an tồn thơng tin, an tồn thơng tin tài liệu Lưu trữ Phần cuối chương trọng vào việc khảo sát thực trạng tài liệu lưu trữ Trung tâm Lưu trữ quốc gia Chƣơng 2: Nghiên cứu cở sở lý thuyết chữ ký số ứng dụng quản lý tài liệu lưu trữ quốc gia Trong chương trình bày kiến thức sở lý thuyết liên quan hệ mật mã, hạ tầng khố cơng khai, hàm Băm, chữ ký số, chữ ký số RSA Kết chương phần nghiên cứu hạ tầng khóa cơng khai chứng thư số Chƣơng 3: Xây dựng ứng dụng chữ ký số cho tài liệu lưu trữ quốc gia Trong chương đưa xây dựng ứng dụng ký số quản lý tài liệu lưu trữ quốc gia, cuối chương có số hình ảnh mã nguồn minh họa Chức tự động ký số toàn tài liệu thư mục chọn; Có thể đưa hình ảnh chữ ký số vào trang PDF; Chức mã hóa liệu; Chức xác thực tài liệu Phần mềm có sử dụng thư viện mã nguồn mở ItextSharp PdfSharp - 47 48 ỨNG DỤNG KÝ SỐ TÀI LIỆU LƢU TRỮ QUÔC GIA Chuyển đổi fie JPEG sang PDF Ký số PDF (Tùy chọn hiển thị ảnh ký số) Mã hóa liệu Xác thực tài liệu 3.3.5.1 Module tự động chuyển file tài liệu từ nhiều file JPG sang file PDF Module có chức tìm kiếm tất file JPEG thư mục chọn sau tự động tạo file PDF đưa file JPEG thư mục vào file PDF, Thư mục có tên thư mục cũ thêm từ “_PDF” lưu vào Các bước thực Bước 1: Chọn thư mục file JPEG cần chuyển đổi Bước 2: Chon thư mục lưu file PDF; Bước 3: Bấm nút Chuyển sang PDF ứng dụng đọc tất file JPEG thư mục chuyển thành file pdf lưu vào thu mục có tên giơng thư mục cũ thêm từ “_PDF” vào đằng sau - 3.3.5.2 Module Module mã hóa ký số vào file PDF; Module có chức tìm kiếm tất file PDF thư mục chọn sau tự động tạo file PDF đưa file JPEG thư mục vào file PDF thư mục có tên thư mục cũ thêm từ “_Signed” lưu vào đó; Bước 1: Chọn thư mục file PDF cần ký; Bước 2: Chọn thư mục file PDF ký; Bước 3: Chọn chứng thư số cần ký; - 49 Bước 4: Nếu muốn mã hóa liệu tích nút mã hóa( khơng mã hóa bỏ qua bước này); Bước 5: Bấm nút ký số để ký số cho toàn tài liệu chọn; - 3.3.5.3 Module xác thực file PDF Module có chức kiểm tra tính vẹn tồn tà PDF Bước 1: chọn thư file PDF cần xác thực; Bước 2: Ấn nút xác thực tài liệu; Ứng dụng có thơng báo kết cùa file liệu có ven tồn hay thay đổi - 3.3.6 Một số hình ảnh ứng dụng ký số Bảng 3.3: Giao diện ứng dụng 50 ChuChuyển đổi JPEG sang PDF ChuKý số PDF Mô tả thông tin tài liệu Bảng 3.4: Chức chuyển đổi file JPEG sang PDF ký số tài liệu Bảng 3.5: Giao diện chọn chứng thư số tùy chọn hình ảnh đại diện 51 Bảng 3.6: Lựa chọn hình ảnh đại diện M Bảng 3.7: Lựa chọn chứng thư để ký 52 Bảng 3.8: Tùy chọn mã hóa liệu 53 Kết luận Với mục tiêu nghiên cứu chữ ký số ứng dụng chữ ký số quản lý tài liệu quốc gia, xét mặt kết tổng quan, Luận văn đạt yêu cầu sau Nội dung đạt đƣợc Nghiên cứu tổng quan bảo mật an tồn thơng tin, an tồn thơng tin tài liệu lưu trữ Khảo sát thực trạng tài liệu lưu trữ câc trung tâm Lưu trữ quốc gia, đưa số liệu cụ thể tài liệu số lưu trữ Trung tâm Lưu trữ quốc gia - Nghiên cứu tổng quan chữ ký số, hàm Băm, hạ tầng khóa cơng khai - Xây dựng ứng dụng ký số cho tài liệu lưu trữ quôc gia - Hạn chế - Ứng dụng ký số cho tài liệu định dạng JPEG, chưa ký số cho định dạng khác Hƣớng phát triển Trong thời gian tới ứng dụng bổ sung thêm tính ký file ghi âm, định dạng video khác Ngoài ứng dụng cần hoàn tiện thêm triển khai thực tế Trung tâm Lưu trữ quốc gia giúp đảm bảo tính toàn vẹn xác thực tài liệu tính bảo mật tài liệu./ 54 Tài liệu tham khảo Tiếng Việt Trịnh Nhật Tiến, Giáo trình An toàn liệu; TS Hồ Văn Hương, Ths Đào Thị Ngọc Thuỳ, Ứng dụng hệ thống kiểm soát truy nhập mạng theo mơ hình truy nhập lần, Tạp chí An tồn thơng tin, số (025) 2013 TS Hồ Văn Hương, KS Hoàng Chiến Thắng, Ký số xác thực tảng web, Tạp chí An tồn thơng tin, số (026) năm 2013; TS Hồ Văn Hương, KS Hoàng Chiến Thắng, KS Nguyễn Quốc Uy Giải pháp bảo mật xác thực thư điện tử, Tạp chí An tồn thơng tin số 04 (028), 2013; Vnisa, Báo cáo trạng ATTT Việt Nam 2010 Báo cáo tổng hợp tình hình lưu trữ sử dụng sở liệu tài liệu lưu trữ Trung tâm Lưu trữ quốc gia năm 2014 Cục văn thư Lưu trữ nhà nước Tiếng Anh William Stallings, Cryptography and Network Security Principles and Practices, Fourth Edition, November 16, 2005; Whitfield Diffie and Martin E Hellman, New Directions in Cryptography, 1976; Bart Van Rompay Analysis and Desigbn of Cryptographic Hash Functions, MAC Algorithms and Block Ciphers, Juni 2004; 10 Burt Kaliski,RSA Laboratories, The Mathematics of the RSA Public-Key Cryptosystem; Website 11 12 13 14 15 www.antoanthongtin.vn www.en.wikipedia.org www.vi.wikipedia.org www.pki.openca.org www.ckca.vn 55 Phụ lục: Mã nguồn chƣơng trình private void btnConvert_Click(object sender, EventArgs e) { if (txtSrcFdr.Text == "") { MessageBox.Show("Bạn chưa chọn thư mục nguồn"); return; } if (!Directory.Exists(txtSrcFdr.Text)) { MessageBox.Show("Thư mục nguồn bạn chọn không tồm tại"); return; } if (txtDestFdr.Text == "") { MessageBox.Show("Bạn chưa chọn thư mục đích"); return; } if (!Directory.Exists(txtDestFdr.Text)) { try { Directory.CreateDirectory(txtDestFdr.Text); } catch { MessageBox.Show("Không tạo thư mục file ký số"); return; } } success = false; bw.RunWorkerAsync(); toolStripProgressBar1.Style = ProgressBarStyle.Marquee; } private void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { toolStripProgressBar1.Style = ProgressBarStyle.Blocks; toolStripProgressBar1.Value = 0; if (success) MessageBox.Show("Bạn chuyển đổi thành công: " + TongFileTao + "/" + TongFileTao + TongFileLoi, "Hoan thanh", MessageBoxButtons.OK, MessageBoxIcon.Information); } 56 PdfSharp.Pdf.PdfDocument AddPage(PdfSharp.Pdf.PdfDocument doc, XSize size, string strFileName, int intPage) { double Height = 0, Width = 0; XGraphics xgr = XGraphics.FromPdfPage(doc.Pages[intPage]); XImage img = XImage.FromFile(strFileName); if (XUnit.FromPoint(size.Height) < XUnit.FromPoint(img.Height)) { Height = Math.Round((XUnit.FromPoint(size.Height) XUnit.FromPoint(img.Height)) / 2); } if (XUnit.FromPoint(img.Width) < XUnit.FromPoint(size.Width)) { Width = Math.Round((XUnit.FromPoint(size.Width) XUnit.FromPoint(img.Width)) / 2); } xgr.DrawImage(img, 20, 20); return doc; } void CreateAllFilePDF(string strSounrcetFolder, ref int TongFileTao, ref int TongFileLoi) { CreateFilePDF(strSounrcetFolder, ref TongFileTao, ref TongFileLoi); string[] subdirectoryEntries = Directory.GetDirectories(strSounrcetFolder); foreach (string subdirectory in subdirectoryEntries) { CreateAllFilePDF(subdirectory, ref TongFileTao, ref TongFileLoi); } } void CreateFilePDF(string strSounrcetFolder, ref int TongFileTao, ref int TongFileLoi) { try { XSize size = new XSize(XUnit.FromMillimeter(297), XUnit.FromMillimeter(210)); PdfSharp.Pdf.PdfDocument doc = new PdfSharp.Pdf.PdfDocument(); string strTargetFile = txtDestFdr.Text + strSounrcetFolder.Substring(txtSrcFdr.Text.Length, strSounrcetFolder.Length txtSrcFdr.Text.Length); strTargetFile += "\\" + new DirectoryInfo(strSounrcetFolder).Name + ".pdf"; string strTarrgetFolder = Path.GetDirectoryName(strTargetFile); if (CreateDir(strTarrgetFolder) != 1) { return; } 57 string[] filePaths = Directory.GetFiles(strSounrcetFolder, "*.jpg", SearchOption.TopDirectoryOnly); if (filePaths.Length >= 0) { for (int intThutu = 0; intThutu < filePaths.Length; intThutu++) { doc.Pages.Add(new PdfSharp.Pdf.PdfPage()); AddPage(doc, size, filePaths[intThutu], intThutu); } } doc.Save(strTargetFile); doc.Close(); success = true; TongFileTao += 1; } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Information); TongFileLoi += 1; } } private void bw_DoWork(object sender, DoWorkEventArgs e) { try { TongFileTao = 0; TongFileLoi = 0; CreateAllFilePDF(txtSrcFdr.Text, ref TongFileTao, ref TongFileLoi); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } Class Ký số using System; using System.Collections.Generic; using System.Text; using using using using Org.BouncyCastle.Crypto; Org.BouncyCastle.X509; System.Collections; Org.BouncyCastle.Pkcs; 58 using using using using iTextSharp.text.pdf; System.IO; iTextSharp.text.xml.xmp; Org.BouncyCastle.Security; namespace TTTH.DAITD.KYSO { class PDFSigner { private string inputPDF = ""; private string outputPDF = ""; private Cert myCert; private MetaData metadata; public PDFSigner(string input, string output) { this.inputPDF = input; this.outputPDF = output; } public PDFSigner(string input, string output, Cert cert) { this.inputPDF = input; this.outputPDF = output; this.myCert = cert; } public PDFSigner(string input, string output, MetaData md) { this.inputPDF = input; this.outputPDF = output; this.metadata = md; } public PDFSigner(string input, string output, Cert cert, MetaData md) { this.inputPDF = input; this.outputPDF = output; this.myCert = cert; this.metadata = md; } public void Sign(PDFSignatureAP sigAP, bool encrypt, PDFEncryption Enc) { PdfReader reader = new PdfReader(this.inputPDF); FileStream fs = new FileStream(this.outputPDF, FileMode.Create, FileAccess.Write); PdfStamper st; if (this.myCert == null) { st = new PdfStamper(reader, fs); } 59 else { st = PdfStamper.CreateSignature(reader, fs, '\0', null, sigAP.Multi); } if (encrypt && Enc != null) Enc.Encrypt(st); //st.SetEncryption(PdfWriter.STRENGTH128BITS, "user", "owner", PdfWriter.ALLOW_COPY); st.MoreInfo = this.metadata.getMetaData(); st.XmpMetadata = this.metadata.getStreamedMetaData(); if (this.myCert == null) //No signature just write meta-data and quit { st.Close(); return; } PdfSignatureAppearance sap = st.SignatureAppearance; sap.SetCrypto(this.myCert.Akp, this.myCert.Chain, null, PdfSignatureAppearance.WINCER_SIGNED); sap.Reason = sigAP.SigReason; sap.Contact = sigAP.SigContact; sap.Location = sigAP.SigLocation; if (sigAP.Visible) { iTextSharp.text.Rectangle rect = st.Reader.GetPageSize(sigAP.Page); sap.Image = sigAP.RawData == null ? null : iTextSharp.text.Image.GetInstance(sigAP.RawData); sap.Layer2Text = sigAP.CustomText; sap.SetVisibleSignature(new iTextSharp.text.Rectangle(sigAP.SigX, sigAP.SigY, sigAP.SigX + sigAP.SigW, sigAP.SigY + sigAP.SigH), sigAP.Page, null); } PdfSignature dic = new PdfSignature(PdfName.ADOBE_PPKLITE, new PdfName("adbe.pkcs7.detached")); dic.Reason = sap.Reason; dic.Location = sap.Location; dic.Contact = sap.Contact; dic.Date = new PdfDate(sap.SignDate); sap.CryptoDictionary = dic; int contentEstimated = 15000; // Preallocate excluded byte-range for the signature content (hex encoded) Dictionary exc = new Dictionary(); exc[PdfName.CONTENTS] = contentEstimated * + 2; sap.PreClose(exc); PdfPKCS7 sgn = new PdfPKCS7(this.myCert.Akp, this.myCert.Chain, null, 60 "SHA-256", false); IDigest messageDigest = DigestUtilities.GetDigest("SHA-256"); Stream data = sap.RangeStream; byte[] buf = new byte[8192]; int n; while ((n = data.Read(buf, 0, buf.Length)) > 0) { messageDigest.BlockUpdate(buf, 0, n); } byte[] hash = new byte[messageDigest.GetDigestSize()]; messageDigest.DoFinal(hash, 0); DateTime cal = DateTime.Now; byte[] ocsp = null; if (this.myCert.Chain.Length >= 2) { String url = PdfPKCS7.GetOCSPURL(this.myCert.Chain[0]); if (url != null && url.Length > 0) ocsp = new OcspClientBouncyCastle(this.myCert.Chain[0], this.myCert.Chain[1], url).GetEncoded(); } byte[] sh = sgn.GetAuthenticatedAttributeBytes(hash, cal, ocsp); sgn.Update(sh, 0, sh.Length); byte[] paddedSig = new byte[contentEstimated]; if (this.myCert.Tsc != null) { byte[] encodedSigTsa = sgn.GetEncodedPKCS7(hash, cal, this.myCert.Tsc, ocsp); System.Array.Copy(encodedSigTsa, 0, paddedSig, 0, encodedSigTsa.Length); if (contentEstimated + < encodedSigTsa.Length) throw new Exception("Không đủ không gian để ký"); } else { byte[] encodedSig = sgn.GetEncodedPKCS7(hash, cal); System.Array.Copy(encodedSig, 0, paddedSig, 0, encodedSig.Length); if (contentEstimated + < encodedSig.Length) throw new Exception("Không đủ không gian để ký"); } PdfDictionary dic2 = new PdfDictionary(); dic2.Put(PdfName.CONTENTS, new PdfString(paddedSig).SetHexWriting(true)); sap.Close(dic2); } } } ... Nghiên cứu cở sở lý thuyết chữ ký số ứng dụng quản lý tài liệu lƣu trữ quốc gia Để tìm hiều sở lý thuyết chữ ký số giải pháp áp dụng chữ ký số dụng chữ ký số quản lý tài liệu lưu trữ quốc gia, ... liệu Trung tâm Lưu trữ quốc gia 1.3.4 Tổng hợp tài liệu số hóa Trung tâm Lưu trữ quốc gia Chương 2: Nghiên cứu cở sở lý thuyết chữ ký số ứng dụng quản lý tài liệu lưu trữ quốc gia ... tài liệu lưu trữ, phần cuối chương tác giả khảo sát thực trạng tài liệu số lưu trữ 24 Trung tâm Lưu trữ quốc gia tổng hợp số liệu lưu trữ số lưu trữ Trung tâm Lưu trữ quốc gia 25 Chƣơng 2: Nghiên