1. Trang chủ
  2. » Giáo Dục - Đào Tạo

đề tài tìm hiểu và nghiên cứu mã qr code và xây dựng chương trình mô phỏng quá trình sử dụng qr code trong giao dịch

51 1 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Tìm Hiểu Và Nghiên Cứu Mã QR Code Và Xây Dựng Chương Trình Mô Phỏng Quá Trình Sử Dụng QR Code Trong Giao Dịch
Tác giả Nguyễn Thế Long, Nguyễn Quang Huy, Triệu Đức Vinh
Người hướng dẫn TS. Lê Quang Huy
Trường học Học Viện Kỹ Thuật Mật Mã
Chuyên ngành An Toàn Thông Tin
Thể loại Báo Cáo Bài Tập
Năm xuất bản 2024
Thành phố Hà Nội
Định dạng
Số trang 51
Dung lượng 2,36 MB

Nội dung

dùng có thể cài đặt một ứng dụng với một máy quét QR-code có thể đọc đượcmột mã hiển thị và chuyển đổi nó vào một URL chỉ đến trang web của một côngty, cửa hàng, hoặc sản phẩm liên quan

Trang 1

BAN CƠ YẾU CHÍNH PHỦ

HỌC VIỆN KỸ THUẬT MẬT MÃ

¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

BÁO CÁO BÀI TẬP

ĐỀ TÀI: TÌM HIỂU VÀ NGHIÊN CỨU MÃ QR CODE VÀ XÂY DỰNG CHƯƠNG TRÌNH MÔ PHỎNG QUÁ TRÌNH SỬ

DỤNG QR CODE TRONG GIAO DỊCH

Ngành: An toàn thông tin

Sinh viên thực hiện:

Nguyễn Thế Long - AT170233

Triệu Đức Vinh - AT170257

Người hướng dẫn:

TS Lê Quang Huy

Khoa ATTT - Học viện KTMM

Hà Nội - 2024

Trang 3

MỤC LỤC

Mục lục i

Danh mục kí hiệu và viết tắt iii

Danh mục hình vẽ v

Danh mục bảng vii

Lời nói đầu viii

Chương 1 cơ sở lý thuyết 1

1.1 Tổng quan Blockchain 1

1.1.1 Khái niệm 1

1.1.2 Một số vấn đề thách thức với công nghệ Blockchain 11

1.1.3 Ứng dụng 16

1.1.4 Phân loại 17

1.2 Tổng quan danh tính điện tử 20

1.2.1 Định nghĩa 20

1.2.2 Quản lý định danh 22

1.2.3 Các mô hình quản lý định danh 24

Chương 2 Mô hình định danh số tự chủ 28

2.1 Mô hình Self-Sovereign Identity 28

2.1.1 Các yếu tố cấu thành 28

2.1.2 Tự chủ danh tính dựa trên Blockchain 29

2.1.3 Kịch bản lý tưởng 30

2.2 Nền tảng đề xuất Hyperledger 37

2.2.1 Tổng quan Hyperledger 37

2.3 Hyperledger Indy 39

Chương 3 Xây dựng hệ thống ứng dụng công nghệ Blockchain trong bài toán Quản lý Định danh điện tử 50

3.1 Mục tiêu xây dựng 50

3.2 Kịch bản thử nghiệm 53

3.2.1.Chuẩn bị 53

3.2.2.Tổng quan kịch bản 55

3.2.3.Đặc tả chức năng 57

3.3 Triển khai và cài đặt hệ thống giả lập 53

3.3.1.Cấu hình nội dung tệp cài đặt 53

3.3.2 Khởi động hệ thống 55

3.3.3 Tiến hành thử nghiệm 57

3.4 Kết luận 64

Trang 4

KẾT LUẬN 68

TÀI LIỆU THAM KHẢO 69

DANH MỤC HÌNH VẼ Hình 1-1: Khối trong chuỗi khối, cây Merkle trong một khối 4

Hình 1-2: Địa chỉ Ethereum - Source: medium.com 5

Hình 1-3: Hệ thống mạng ngang hàng 6

Hình 1-4: Mô hình hoạt động của một Blockchain công khai 11

Hình 1-5: Phân nhánh trong Blockchain 12

Hình 1-6: Vòng đời định danh điện tử 21

Hình 1-7: Mô hình quản lý định danh ứng với từng nhà cung cấp dịch vụ 23

Hình 1-8: Mô hình quản lý định danh tập trung 23

Hình 2-1: Các tác nhân trong mô hình tự chủ danh tính 30

Hình 2-2: Lược đồ hoạt động của mô hình tự chủ danh tính 30

Hình 2-3: Tam giác Blockchain - Blockchain Trilemma 38

Hình 2-4: Hệ sinh thái Hyperledger 39

Hình 2-5: Cú pháp DID 40

Hình 2-6: Mô hình xác thực danh tính truyền thống 41

Hình 2-7: Mô hình xác thực danh tính sử dụng tự chủ danh tính 41

Hình 3-1: Tương tác giữa các thực thể 50

Hình 3-2: Giao diện của Alice 51

Hình 3-3: Thông tin khởi tạo các node 52

Hình 3-4: Mẫu đăng ký chứng chỉ 54

Hình 3-5: Giao diện quản lý của đại học Faber 54

Hình 3-6: Faber gửi yêu cầu kết nối đến Alice 55

Hình 3-7: Thư yêu cầu được kết nối với Alice gửi từ Faber 55

Hình 3-8: Alice kết nối thành công với Faber 56

Hình 3-9: Faber cấp chứng chỉ học thuật cho Alice 56

Trang 5

Hình 3-11: Thông tin chứng chỉ học thuật của Alice 64

Hình 3-12: Tập đoàn ACME chấp nhận yêu cầu kết nối từ Alice 64

Hình 3-13: Tập đoàn ACME sao chép mẫu yêu cầu xem chứng chỉ từ đại học Faber 65

Hình 3-14: ACME gửi yêu cầu xem chứng chỉ của Alice 65

Hình 3-15: Alice cho phép tập đoàn ACME xem chứng chỉ 66

Hình 3-16: ACME đã có thể xem chứng chỉ học thuật của Alice 66

Trang 6

LỜI NÓI ĐẦU

Trong thời đại công nghệ số bùng nổ, mã QR (Quick Response) đã nổi lênnhư một công cụ thiết yếu trong nhiều lĩnh vực, đặc biệt là trong các hoạt độnggiao dịch và thanh toán điện tử Với khả năng mã hóa thông tin nhanh chóng,chính xác và dễ dàng quét bằng các thiết bị di động, mã QR mang lại sự tiện lợi,hiệu quả và an toàn cho người dùng Việc nghiên cứu và tìm hiểu về mã QRkhông chỉ giúp nắm bắt được các khía cạnh kỹ thuật và cơ chế hoạt động củaloại mã này mà còn mở ra nhiều cơ hội ứng dụng trong thực tiễn

Tính cấp thiết của đề tài này nằm ở sự phổ biến ngày càng gia tăng của

mã QR trong đời sống hàng ngày Từ thanh toán tại các cửa hàng, nhà hàng, đếnviệc xác thực thông tin trong các dịch vụ công cộng, mã QR đã trở thành mộtphần không thể thiếu trong các hoạt động thường nhật Đặc biệt, trong bối cảnhđại dịch COVID-19, nhu cầu về các phương thức thanh toán không tiếp xúc đãthúc đẩy sự phát triển và áp dụng rộng rãi của mã QR Việc sử dụng mã QR giúphạn chế tiếp xúc vật lý, giảm nguy cơ lây nhiễm, và tăng cường trải nghiệmngười dùng thông qua quy trình thanh toán nhanh gọn và tiện lợi

Mặt khác, việc xây dựng một chương trình mô phỏng quá trình sử dụng

mã QR trong giao dịch không chỉ mang tính học thuật mà còn có ý nghĩa thựctiễn cao Thông qua việc mô phỏng, chúng ta có thể kiểm tra, đánh giá hiệu quả

và bảo mật của các hệ thống thanh toán sử dụng mã QR Điều này không chỉgiúp cải thiện chất lượng dịch vụ mà còn đóng góp vào việc phát triển các giảipháp thanh toán điện tử an toàn và tin cậy hơn

Nghiên cứu này cũng giúp giải quyết các thách thức kỹ thuật và bảo mậtliên quan đến mã QR Mặc dù mã QR mang lại nhiều lợi ích, nhưng nó cũng cónhững điểm yếu cần được khắc phục, như các mối đe dọa từ mã độc và cácphương thức tấn công giả mạo Việc tìm hiểu và đề xuất các biện pháp bảo vệ sẽgóp phần nâng cao độ an toàn và tin cậy của các giao dịch sử dụng mã QR.Ngoài ra, ứng dụng của mã QR không chỉ giới hạn trong thanh toán mà còn mởrộng ra nhiều lĩnh vực khác như giáo dục, y tế, du lịch và quảng cáo Việcnghiên cứu sâu về mã QR và phát triển các ứng dụng thực tiễn sẽ tạo điều kiệnthúc đẩy sự sáng tạo và đổi mới trong nhiều ngành công nghiệp, từ đó mang lạilợi ích kinh tế và xã hội đáng kể

Tóm lại, việc tìm hiểu và nghiên cứu mã QR code cùng với xây dựngchương trình mô phỏng quá trình sử dụng mã QR trong giao dịch không chỉ đápứng nhu cầu hiện tại mà còn mở ra nhiều triển vọng phát triển trong tương lai.Điều này khẳng định tính cấp thiết và thực tiễn cao của đề tài, góp phần thúc đẩy

Trang 7

CHƯƠNG 1 TỔNG QUAN VỀ MÃ QRCODE

Hình ảnh mã QR CodeMột mã QR được đọc bởi một đầu đọc mã vạch, chẳng hạn như một máyảnh, một điện thoại di động, một điện thoại thông minh, hoặc một webcam, và

sử dụng thuật toán sửa lỗi Reed-Solomon

Mã QR được phát minh tại Nhật Bản bởi công ty Denso Wave( công ty concủa Toyota) vào năm 1994 để theo dõi xe trong sản xuất

Các mã QR nhỏ nhất là 21x21 pixel, và lớn nhất là 177x177 Các kích thướcđược gọi là phiên bản Kích thước 21x21 pixel là phiên bản 1, 25x25 là phiênbản 2, và cứ tiếp tục như thế Kích thước 177x177 là phiên bản 40

1.1.2 Sử dụng

Ban đầu được thiết kế cho mục đích sử dụng công nghiệp, mã QR đã trở nên

Trang 8

dùng có thể cài đặt một ứng dụng với một máy quét QR-code có thể đọc đượcmột mã hiển thị và chuyển đổi nó vào một URL chỉ đến trang web của một công

ty, cửa hàng, hoặc sản phẩm liên quan đến mã cung cấp thông tin cụ thể bằngtrình duyệt web của điện thoại

"In the shopping industry, knowing what causes the consumers to bemotivated when approaching products by the use of QR codes, advertisers andmarketers can use the behavior of scanning to get consumers to buy, causing it

to have the best impact on ad and marketing design" - Tolliver-Walker, Heidi(2011) Kết quả là, mã QR đã trở thành một trọng tâm của quảng cáo chiến lược,

vì nó cung cấp truy cập nhanh và dễ dàng đến trang web của thương hiệu Ngoàiviệc tiện lợi cho người tiêu dùng, tầm quan trọng của điều này khả năng là nólàm tăng tỷ lệ chuyển đổi (có nghĩa là, làm tăng cơ hội có thể liên lạc với cácquảng cáo sẽ chuyển đổi để bán), bằng cách đưa người xem đến trang web củanhà quảng cáo ngay lập tức

Mã QR lưu trữ địa chỉ và Uniform Resource Locators (URL) có thể xuất hiệntrên các tạp chí, trên các chữ ký, trên xe buýt, trên thẻ kinh doanh, hoặc trên hầuhết các đối tượng cần sử dụng thông tin Người sử dụng với một máy ảnh điệnthoại được trang bị một ứng dụng đọc chính xác có thể quét hình ảnh của mã QR

để hiển thị văn bản, thông tin liên lạc, kết nối với một mạng không dây , hoặc

mở một trang web trong trình duyệt của điện thoại Mã QR cũng có thể nối tiếpđến một vị trí nơi mà mã đã được quét Hoặc các ứng dụng quét mã QR truyxuất thông tin địa lý bằng cách sử dụng GPS và tế bào tam giác tháp (aGPS)hoặc URL được mã hóa trong mã QR chính nó được liên kết với một vị trí

1.2 Đặc điểm của QR Code

1.2.1 So sánh QR code và BarCode

QR Code chứa đựng thông tin một địa chỉ web, thời gian diễn ra một sự kiện,thông tin liên hệ địa chỉ email, tin nhắn SMS, nội dung ký tự văn bản hay thậmchí là thông tin định vị vị trí địa lý Tùy thuộc thiết bị đọc mã QR mà bạn dùngkhi quét, nó sẽ dẫn bạn tới một trang web, gọi đến một số điện thoại, xem mộttin nhắn

QR code cũng tương tự mã vạch truyền thống tuy nhiên điểm khác nhau giữa

QR code và mã vạch truyền thống là lượng dữ liệu chúng nắm giữ hay chia sẻ.Các mã vạch truyền thống có các đường vạch thẳng dài một chiều và chỉ có

Trang 9

hàng ngàn ký tự chữ số QR code nắm giữ nhiều thông tin hơn và tính chất dễdùng sẽ giúp ích rất nhiều cho các doanh nghiệp vừa và nhỏ.

1.2.2 Ưu điểm

 Mã vạch QR là một loại mã vạch hai chiều có nhiều tính năng ưu việt

do Công ty Denso của Nhật Bản phát minh Mã vạch QR có khả năng

mã hóa nhiều thông tin, giải mã nhanh, khả năng sửa lỗi cao(có thể đọcđược mã bị mờ hoặc mất đi một phần) và có thể mã hóa được ký tự Kanji và chữ tiếng Việt Thông qua việc tích hợp vào các thiết bị điện thoại di động, mã QR đang được các công ty Nhật Bản phát triển thànhcác giải pháp thông minh cho thương mại qua di động…

 Một mã QR có thể chứa đựng thông tin một địa chỉ web (URL), thời

gian diễn ra một sự kiện, thông tin liên hệ (như vCard), địa chỉ email, tin nhắn SMS, nội dung ký tự văn bản hay thậm chí là thông tin định vị

vị trí địa lý Tùy thuộc thiết bị đọc mã QR mà bạn dùng khi quét, nó sẽdẫn bạn tới một trang web, gọi đến một số điện thoại, xem một tin nhắn…

1.2.3 Nhược điểm

Những ứng dụng trong tương lai dành cho mã vạch QR code là rất lớn,nhưng mã vạch này cũng có những hạn chế nhất định như sau:

 QR code đòi hỏi phải có phần mềm đọc mã trên điện thoại, và nếu mã

này xuất hiện ngoài trời như trên billboard, bến xe… có thể những chướng ngại vật khác sẽ hạn chế khả năng nhận dạng của máy Bạn phải có smart phone tích hợp camera mới đọc được mã

 QR code cũng không có tính lan truyền (viral) như hình thức nhắn tin

SMS…

 Hơn nữa, tuy QR code cực kỳ phổ biến tại Nhật Bản, song nhìn chung

loại mã này vẫn còn khá mới mẻ Thông thường doanh nghiệp phải giải thích và hướng dẫn khách hàng cách sử dụng

1.2.4 Khả năng lưu trữ của QR code

Số lượng dữ liệu có thể được lưu trữ trong các biểu tượng QR code phụthuộc vào kiểu dữ liệu (hình thức hoặc tập ký tự đầu vào), phiên bản (1,…,40,

mô tả kích thước của QR Code), và mức độ sửa lỗi Khả năng lưu trữ tối đa cho40-L symbols (ở phiên bản 40, mức sửa lỗi là L):

Trang 10

Số đơn thuần 7,089 3⅓ 0, 1, 2, 3, 4, 5,

6, 7, 8, 9

0–9, A–Z (chỉchữ hoa), cách, $, %, *,

Trang 11

1.2.5 Khả năng sửa lỗi

Mức L: 7% số từ mã (codeword) có thể được phục hồi

Sử dụng QR Code để quảng cáo

Pizza Digitale

Trang 12

Scholz & Friends, một trong những công ty quảng cáo lớn nhất ở châu Âu,đang tìm kiếm thành viên mới gia nhập đội ngũ sáng tạo kỹ thuật số của họ Nhưcông ty cho biết, "mật ong thu hút nhiều ruồi hơn giấm", vì vậy họ đã cố gắngmột chiến dịch tuyển dụng sáng tạo và quyến rũ - Pizza Digitale - một bánhpizza đặc biệt, đó là trong bốn tuần thêm vào mỗi đơn hàng từ các nhân viên cơquan lớn khác Bánh pizza được che phủ trong nước sốt cà chua, có hình dạnggiống như một mã QR, trực tiếp liên kết đến thông tin về lời mời làm việc Kếtquả - 12 cuộc phỏng vấn việc làm và 2 đội mới cho các đơn vị kỹ thuật số củacác cơ quan

Qkies – bánh QR code có thể ăn được

Trang 13

Qkies là một sản phẩm độc đáo được tạo ra bởi công ty thương mại thựcphẩm Đức Juchem Gruppe and DFKI Họ tạo ra những chiếc bánh với mã QR

ăn được có thể được sử dụng cho nhiều thứ Bạn có thể nướng bánh với mã QR

và liên kết chúng đến trang web nào mà bạn muốn

Bánh nướng mã QR

Trang 14

Một sản phẩm của tiệm bánh Clevercupcakes tại Montreal Bạn có thể liênkết tới công thức nấu ăn, cửa hàng, sự kiện, dinh dưỡng,v.v…

Mã QR khổng lồ được vẽ trên mái của Facebook HQ

Trang 15

Sau khi chuyển đến trụ sở mới ở Menlo Park, nhân viên Facebook đượckhuyến khích bởi Mark Zuckerberg tham gia vào "không gian Hackathon" - làmcho không gian mới cảm thấy như đang ở nhà Tất cả các ý tưởng được chàođón - thẻ các bức tường, treo áp phích v.v… Nhưng Mark Pike làm nó một cáchnghiêm túc - ông muốn làm cho HQ có thể nhìn thấy từ không gian, ông muốnxâm nhập toàn cầu Vì vậy, ông và các nhân viên Facebook đã cùng nhau vẽ nênmột mã QR rộng 42ft trên tầng mái.

Ứng dụng trong nghệ thuật và thiết kế

Mã QR 3D từ gỗ

Nhà thiết kế người Đức Elena Belmann đã tạo ra một khối gỗ và chuyển mã

QR hai chiều thành 3 chiều

Trang 16

Mã QR được tạo ra từ các vật dụng hàng ngày

Trang 17

Sau khi tung ra trang web mới, David Skyes quyết định ông cần có một cáchmới để nói với mọi người về điều đó Ông ta tạo ra một mã QR rộng 8 ft sửdụng các vật dụng đời thường trong phòng thu của mình.

Mã QR Rubik

Trang 18

Mã QR này được tạo ra bởi Ape.IO Có 49 chiếc Rubik được sử dụng và haimàu tương phản là trắng và xanh nước biển.

Trong tương lai, mã vạch QRcode có thể được sử dụng trong các lĩnh vựcnhư:

 Sử dụng tại các bến xe bus : người sử dụng khi quét mã QR Code của bến

xe bus sẽ biết thông tin về các chuyến xe sắp tới

 Sử dụng tại bảo tàng : người sử dụng chỉ cần quét mã QR Code đặt cạnh vật trưng bày là biết được thông tin chi tiết và cập nhật về đồ vật đó

 Sử dụng để mua hàng ở bất kỳ đâu : người sử dụng khi đi tàu điện ngầm,

xe bus … nếu thấy thích mặt hàng đang quảng cáo trên đó có thể đặt mua ngay lập tức thông qua QR Code và Mobile Internet

 Sử dụng tại siêu thị : người mua có thể quét mã QR Code để biết được hàm lượng dinh dưỡng của đồ ăn cần mua

 Sử dụng tại các hội thảo : người tham gia hội thảo có thể sử dụng QR Code thay cho Business Card của mình

 Sử dụng với các tờ báo/tạp chí giấy : người đọc có thể quét mã QR Code được in trong tờ báo/tạp chí giấy để truy cập phiên bản online/mobile của

Trang 19

 Sử dụng với đồ vật cá nhân (xe, áo thun…) : để cung cấp thông tin về chủ nhân…

 Sử dụng để thu tiền xe ô tô: thay vì việc phải dừng lại ở trạm thu phí, xe ô

tô có thể di chuyển qua trạm với tốc độ vừa phải mà vẫn nộp được phí nếuđược gắn QR Code trên xe

CHƯƠNG 2 ỨNG DỤNG CỦA MÃ QR TRONG GIAO DỊCH

2 Thuật toán Qrcode

2.1 Phân tích dữ liệu

Một mã QR mã hoá một chuỗi văn bản Các mã QR chuẩn có bốn kiểu mãhoá văn bản: số, chữ và số, nhị phân, và Kanji Mỗi kiểu mã hoá văn bản nhưmột chuỗi nhị phân (gồm 1 và 0), nhưng mỗi kiểu sử dụng một phương thứckhác nhau để chuyển đổi văn bản sang chuỗi nhị phân Mỗi phương thức đượctối ưu hoá để tạo ra chuỗi nhị phân ngắn nhất có thể cho một loại dữ liệu Phầnnày giải thích làm thế nào để xác định kiểu để sử dụng

Trang 20

- Kiểu nhị phân: kiểu này dành cho bộ ký tự ISO-8859-1

- Kiểu Kanji: cho các ký tự sử dụng 2 byte từ tập ký tự Shift JIS

Cách chọn kiểu dữ liệu hiệu quả nhất

Để chọn kiểu dữ liệu hiệu quả cho mã QR, kiểm tra các ký tự đầu vào theocác điều kiện sau đây:

- Nếu chuỗi đầu vào chỉ gồm các chữ số thập phân, sử dụng kiểu số

- Nếu kiểu số không áp dụng được, và tất cả các ký tự trong chuỗi đầu vào

có thể tìm thấy cột bên trái của bảng chữ và số thì ta chọn kiểu chuỗi

- Nếu có một ký tự không có trong cột bên trái của bảng chữ và số nhưng

có thể mã hoá được theo tiêu chuẩn ISO-8859-1 thì ta sử dụng kiểu nhị phân

- Nếu tất cả các ký tự đều thuộc bộ ký tự Shift JIS thì ta sử dụng kiểu Kanji

2.2 Mã hoá dữ liệu

Bước 1: chọn mức sửa lỗi

Trước khi mã hoá dữ liệu, ta sẽ chọn một mức sửa lỗi Như đã đề cập trongphần tổng quan, mã QR sử dụng bộ sửa lỗi Reed-Solomon Tiến trình này tạo ra

mã sửa lỗi (bytes ) dựa trên dữ liệu đã được mã hoá Một bộ đọc mã QR có thể

sử dụng các byte sửa lỗi để xác định nếu nó không thể đọc dữ liệu một cáchchính xác, và mã sửa lỗi có thể sử dụng để sửa lỗi Có 4 mức sửa lỗi: L, M, Q, H

Trang 21

Bước 2: xác định phiên bản nhỏ nhất cho dữ liệu

Các kích cỡ khác nhau của mã QR được gọi là phiên bản chúng có bốn mươiphiên bản Phiên bản nhỏ nhất là 1 (21x21 pixels), phiên bản 2 (25x25 pixels),lớn nhất là phiên bản 40 (177x177 pixels) Mỗi phiên bản lớn hơn phiên bảntrước đó 4 pixels

Mỗi phiên bản có khả năng tối đa nhất định, tuỳ thuộc vào kiểu sử dụng.Ngoài ra, mức độ sửa lỗi hạn chế khả năng tiếp tục Bảng khả năng các ký tự liệt

kê các khả năng của các phiên bản QR cho một kiểu mã hoá nhất định và mứcsửa lỗi

Bước 3: thêm bộ hiển thị kiểu

Mỗi kiểu mã hoá có bốn bit bộ hiển thị kiểu xác định nó Dữ liệu được mãhoá phải bắt đầu với bộ hiển thị kiểu thích hợp xác định kiểu được sử dụng chocác bit đến sau nó Bảng sau liệt kê các bộ hiển thị kiểu cho mỗi kiểu

Ví dụ, nếu mã hoá HELLO WORLD ở kiểu chữ và số, bộ hiển thị kiểu là0010

Trang 22

Xem danh sách ở dưới Khi mã hóa độ dài của dữ liệu, chúng ta mã hóa nó

sử dụng một số lượng bit đặc tả Như đã nói ở đầu, chúng ta sử dụng QR codephiên bản 1, vậy nên chúng ta cần sử dụng 9 bit để mã hóa độ dài dữ liệu Tathêm số 0 vào đầu chuỗi cho đên khi đủ 9 bit: 000001011

Phiên bản 1 tới 9

- Kiểu số: 10 bits

- Kiểu chuỗi: 9 bits

- Kiểu nhị phân: 8 bits

- Kiểu số: 14 bits

- Kiểu chuỗi: 13 bits

- Kiểu nhị phân: 16 bits

- Kiểu Nhật ngữ: 12 bits

Tới đây chuỗi nhị phân chúng ta là: 0010 000001011

Trang 23

Tiến trình mã hoá theo các kiểu:

Để mã hóa chuỗi ký tự, ta chia chuỗi thành các cặp ký tự:HE,LL,O ,WO,RL,D

Với mỗi cặp ký tự, ta lấy giá trị mã ASCII của ký tự đầu nhân với 45, sau đócộng với giá trị mã ASCII của ký tự sau Sau đó chuyển kết quả thu được thànhmột chuỗi nhị phân 11 bit

Đối với các ký tự không có cặp, tao lấy giá trị mã ASCII của nó rồi chuyểnthành chuỗi nhị phân 6 bit

Đối với các chế độ khác: kiểu số, kiểu nhị phân, kiểu Nhật ngữ, tao sử dụngphương thức khác để mã hóa dữ liệu

Bước 6: hoàn thành các bit

Với chuỗi bit thu được ở trên, ta phải chắc chắn rằng nó có đủ độ dài Điềunày phụ thuộc vào việc có bao nhiêu bit chúng ra cần để tạo phiên bản và sửalỗi

Với QR code phiên bản 1, sửa lỗi mức độ Q Nếu chuỗi bit nhỏ ít hơn 104, taphải thêm 4 số 0 vào cuối chuỗi Nếu thêm 4 số 0 được một chuỗi nhiều hơn

104, ta chỉ cần thêm số 0 cho tới khi nào đủ 104 bit

Chuỗi của chúng ta có 59 bit, ta thêm 4 số 0 vào cuối chuỗi (Còn nếu chuỗi

có 102 bit thì ta thêm 2 số 0)

Chuỗi của ta bây giờ là:

Trang 24

0010 000001011 01100001011 01111000110 10001011100 10110111000

10011010100 001101 0000

Bước 7: Thêm các từ vào cuối nếu chuỗi quá ngắn

Nếu chuỗi bit của chúng ta vẫn chưa đủ dài, có hai chuỗi con đặc biệt:

11101100 và 00010001 Ta thêm thay phiên hai chuỗi con này vào chuối chuỗicủa chúng ta

Chuỗi của chúng ta chỉ có 10 chuỗi con, cần phải thêm vào 3 chuỗi con nữa.Bắt đầu thêm 11101100, sau đó thêm 00010001, rồi tới 11101100 Nếu cầnnhiều hơn thì cứ thêm lần lượt như vậy cho tới khi đủ số chuỗi con

Chuỗi của chúng ta bây giờ:

00100000 01011011 00001011 01111000 11010001 01110010 11011100

01001101 01000011 01000000 11101100 00010001 11101100

2.3 Tạo mã sửa lỗi

QR code bao gồm bộ mã sửa lỗi Các khối dữ liệu dự phòng đảm bảo rằng

mã QR code vẫn được đọc cho dù có một phần không đọc được

Bước 1: Tìm ra có bao nhiêu mã sửa lỗi cần được tạo

Bước đầu tiên để tạo mã sửa lỗi là xác định có bao nhiêu từ để tạo cho phiênbản QR và mức độ sửa lỗi Tham khảo thêm bảng sửa lỗi

Codewords for

this Version and

EC Level

ECCodewordsPer Block

Number ofBlocks

in Group1

Number

Codewords inEach of Group1's Blocks

TotalData

Trang 25

1-H 9 17 1 9 (9*1)

= 9

= 34

Xem bảng ở trên, chúng ta cần 13 mã sửa lỗi

Bước 2: Tạo một thông điệp đa thức

Chúng ta chuyển 13 khối dữ liệu ở trên thành dạng thập phân:

Lũy thừa của số hạng đầu tiên được tính:

Số khối dữ liệu + số mã sửa lỗi -1

Ở đây là 13+13-1=25 Vậy nên số hạng đầu tiên là 32x 25

Bước 3: Tạo bộ tạo đa thức

Tiếp theo ta sẽ tạo một bộ tạo đa thức Ta chia thông điệp đa thức bởi bộ tạonày để tạo mã sửa lỗi

Các bộ tạo đa thức đến từ một cái gì đó gọi là một trường hữu hạn , cũngđược biết đến như là một trường Galois Các mã QR sử dụng một trường Galois

có 256 yếu tố, có nghĩa là, mục đích của chúng ta, rằng những con số mà chúng

ta sẽ được giao dịch với sẽ luôn luôn tối đa là 255 và ít nhất là 0

Để thực hiện việc phân chia đa thức, chúng ta sẽ được chuyển đổi qua lạigiữa các ký hiệu α (alpha) và các số nguyên Alpha và các giá trị số nguyên từbảng log và antilog

Ngày đăng: 11/07/2024, 15:52

w