Thiết kế tổng thể hệ thống xác thực giao dịch HomeBanking

Một phần của tài liệu Ứng dụng thiết bị Ikey 2000 để triển khai xác thực giao dịch HomeBanking (Trang 59)

Microsoft CA/LDAP BIDV Gateway Firewall 1 Firewall 2 Core banking

Công ty chứng khoán BIDV

CoreBanking Firewall 3 BIDV Gateway Web browser Leased Lin e 256 K bps Firewall 2 Ikey 2032 Web browser Ikey 2032 Web browser Ikey 2032 BIDV Branch Ikey 2032 BIDV Branch Ikey 2032

Hình 24 Kiến trúc tổng thể hệ thống xác thực giao dịch HomeBanking

Thành phần CA: Microsoft certificate service là thành phần chính của hệ thống. Thực hiện các chức năng:

 Tạo chứng chỉ số cho người dùng, ứng dụng (xác thực cho các khoá công khai)

 Bảo trì cơ sở dữ liệu hệ thống, cho phép phục hồi các cặp khoá người dùng

 Buộc hệ thống tuân thủ các thủ tục bảo mật

 Bổ sung người dùng (xác thực chứng chỉ người dùng)

 Quản lý người dùng và chứng chỉ của họ

 Quản lý chính sách bảo mật

 Xây dựng cây xác thực

Thành phần LDAP: Microsoft Active Directory. Lưu trữ toàn bộ về Cơ sở dữ liệu người sử dụng:

 Quản lý cấp phát người sử dụng

 Dịch vụ xác thực người sử dụng

Thành phần Application Server(máy chủ ứng dụng):Sử dụng IBM Websphere Application Server.

 Là máy chủ WEB cài đặt ứng dụng HomeBanking

 Khách hàng truy nhập vào máy chủ để thực hiện các giao dịch với NH.

 Sử dụng cơ chế mã hoá SSL giữa các phiên làm việc

Thành phần Cơ sở dữ liệu:Sử dụng Oralce Database.

 Là máy chủ CSDL lưu trữ toàn bộ dữ liệu của hệ thống.

Thành phần Corebanking:

 Là hệ thống ngân hàng cốt lõi, lưu trữ dữ liệu về tài khoản khách hàng.

 Hệ thống HomeBanking giao tiếp với Corebanking qua hệ thống message theo định dạng ABCS, MBASE.

3.1.2 Bảo mật bằng tường lửa (firewall)

Toàn bộ hệ thống xử lý giao dịch trực tuyến được đặt trong nội bộ phía ngân hàng. Kết nối với mạng thông tin toàn cầu để khách hàng có thể truy cập thông qua một tường lửa. Tường lửa sẽ đóng vai trò kiểm soát thông tin. Chỉ cho phép các thông tin truyền trên cổng 80(HTTP) và 443 (SSL) được đi ra ngoài hệ thống.

Chặn mọi luồng thông tin vào/ra mà có địa chỉ nằm trong danh sách “đen” – danh sách những địa chỉ nghi ngờ hoặc các địa chỉ đã từng có hành động phá hoại hay thăm dò hệ thống BIDV Home Banking.

Chặn các truy cập trái phép từ các máy có địa chỉ thuộc danh sách đen.

Khách hàng sử dụng dịch vụ BIDV Internet Banking chỉ được phép truy cập đến máy chủ Web của hệ thống bằng giao thức https thông qua cổng 9443, không được truy cập đến các máy khác trong mạng Intranet của BIDV bằng bất cứ giao thức truy cập nào. Sơ đồ kết nối vật lý các thành phần của hệ thống BIDV Home Banking

3.1.3 Bảo mật tầng kết nối và xác thực người sử dụng

Sử dụng giao thức bảo mật SSL 128 bit để mã hoá thông tin trên đường truyền từ khách hàng đến ngân hàng. Việc sử dụng SSL sẽ đảm bảo tính toán vẹn của dữ liệu

trong suốt phiên truyền thông. Mọi thông tin truyền nhận giữa ngân hàng và khách hàng đều được mã hoá trên đường truyền bằng cách sử dụng giao thức truy cập SSL và HTTP-S. Bằng cách này đảm bảo mọi thông tin truyền nhận giữa ngân hàng và khách hàng không bị một kẻ thứ 3 khai thác hay sửa đổi.

 Đường truyền được mã hoá theo chuẩn SSL 128 bit, đây là chuẩn thông dụng dùng cho các giao dịch thương mại điện tử

 Sử dụng cơ chế mã hóa dựa trên cơ sở hạ tầng khoá công khai PKI

 Sử dụng chữ ký điện tử để xác thực người gửi

 Sử dụng mã hoá envelope là sự kết hợp của mã hoá công khai RSA và mã hoá bí mật 3DES để chống xem trộm thông tin.

 Sử dụng Microsoft CA để cấp chứng chỉ số dùng cho cơ sở hạ tầng khoá công khai

3.1.3.1 Giao thức truyền nhận an toàn SSL

SSL đảm bảo kết nối giữa máy trạm của khách hàng và máy chủ ứng dụng của ngân hàng an toàn, tin cậy. Quá trình mã hoá/ giải mã diễn ra tự động và trong suốt với người dùng. Khi trình duyệt trên máy của khách hàng yêu cầu một kết nối tới máy chủ ứng dụng của ngân hàng, máy chủ gửi một thông điệp trở lại cho trình duyệt và 2 phía xác định và chọn 1 chuẩn mã hoá mà cả 2 phía có thể hỗ trợ. Tiếp theo trình duyệt phía khách hàng yêu cầu máy chủ đưa ra một chứng chỉ số để chứng thực là trình duyệt kết nối đến đúng máy chủ yêu cầu. Máy chủ sẽ gửi lại cho trình duyệt một chứng chỉ số để trình duyệt kiểm tra dựa vào khoá công khai của chứng chỉ đó đã được lưu trong trình duyệt. Cơ chế SSL dùng cả 2 loại mã hoá là đối xứng và bất đối xứng để truyền dữ liệu. Vì mã hoá đối xứng có ưu điểm là tốc độ mã hoá/ giải mã nhanh, kích thước dữ liệu sau mã hoá không lớn nên tốc độ truyền nhận sẽ nhanh hơn. Tuy nhiên nhược điểm của mã hoá đối xứng là cả 2 bên đều dùng chung một khoá nên nếu dùng lâu dài rất dễ bị một kẻ thứ ba bẻ được khoá. Còn mã hoá bất đối xứng có ưu điểm là mỗi bên sẽ dùng một khoá riêng theo cặp để gửi và nhận thông tin nhưng tốc độ mã hoá/ giải mã chậm, kích thước dữ liệu sau mã hoá lớn ảnh hưởng đến tốc độ truyền/nhận. SSL đã tận dụng ưu điểm của cả 2 phương pháp và giảm thiểu nhược điểm của cả 2 phương pháp gây ra đối với quá trình truyền nhận đó là sử dụng khoá phiên. Khi bắt đầu một phiên truyền nhận dữ liệu trình duyệt phía khách hàng sẽ tự động sinh ra một khoá đối xứng và mã hoá khoá này bằng khoá công khai của CA của máy chủ rồi gửi đến máy chủ. Máy chủ nhận được sẽ sử dụng riêng để giải mã và lấy khoá đối xứng. Sau đó quá trình truyền nhận giữa máy chủ và trình duyệt sẽ được mã hoá bằng khoá đối xứng mà 2 bên cùng có. Khi phiên giao dịch kết thúc khoá phiên sẽ bị loại bỏ hoàn toàn và ko tái sử dụng cho các phiên tiếp theo. Đến phiên giao dịch sau 2 bên lại sử dụng một khoá phiên mới. Như vậy là khoá đối xứng chỉ tồn tại trong khoảng thời gian ngắn của phiên giao dịch và đảm bảo một kẻ thứ 3 không kịp bẻ khoá đó. SSL có 2 độ dài là 40 bits và 128 bits, đó là độ dài của khoá phiên. Thuật toán mã hoá có thể là DES hoặc RSA.

3.1.3.2 Giao thức truyền siêu văn bản an toàn (s- http)

S-Http là một mở rộng của HTTP hoạt động ở tầng ứng dụng. Ngoài việc cung cấp một giao thức truyền tin an toàn nó còn cung cấp công cụ nhằm xác thực máy khách/chủ, mã hoá thông tin và chống chối bỏ việc gửi tin và đảm bảo tính toàn vẹn dữ liệu. S-Http thiết lập phiên giao dịch an toàn khách với SSL. Trong khi SSL tiến hành “bắt tay” giữa 2 máy thì S-Http thiết lập chi tiết an toàn thông qua phần đầu (header) của gói đặc biệt. Header định nghĩa kiểu kỹ thuật an toàn, cụ thể là mã khoá riêng, xác thực máy chủ, xác thực máy khách và đảm bảo tính toàn vẹn dữ liệu. Header cũng qui định thuật toán nào máy khách/ máy chủ hỗ trợ hay cả 2 máy hỗ trợ, kỹ thuật nào được sử dụng, đặc tính nào được chọn lựa. Một khi phiên giao dịch an toàn được thiết lập, mọi thông tin trao đổi đều được đóng

kín (secure envelope), mọi thông tin đều được mã hoá, không ai có thể xem trộm được, cũng không ai có thể sửa được vì bất kỳ một sửa đổi nào cũng đều bị phát hiện đồng thời cũng đảm bảo người gửi/nhận.

3.1.4 Xác thực giao dịch với chứng chỉ số, chữ ký điện tử

Chứng chỉ số là một tệp tin điện tử dùng để xác minh danh tính một cá nhân, một máy chủ, một công ty... trên Internet. Chứng chỉ số cũng vậy, do một tổ chức đứng ra chứng nhận những thông tin của bạn là chính xác, được gọi là Nhà cung cấp chứng thực số (Certificate Authority, viết tắt là CA). CA phải đảm bảo về độ tin cậy, chịu trách nhiệm về độ chính xác của chứng chỉ số mà mình cấp.

Trong chứng chỉ số có ba thành phần chính: • Thông tin cá nhân của người được cấp

• Khoá công khai (Public key) của người được cấp • Chữ ký số của CA cấp chứng chỉ

Trong các hệ thống quản lý chứng thực số đang hoạt động trên thế giới, Nhà cung cấp chứng thực số (Certificate authority - CA) là một tổ chức chuyên đưa ra và quản lý các nội dung xác thực bảo mật trên một mạng máy tính, cùng các khoá công khai để mã hoá thông tin. Là một phần trong Cơ sở hạ tầng khoá công khai (public key infrastructure - PKI), một CA sẽ kiểm soát cùng với một nhà quản lý đăng ký (Registration authority - RA) để xác minh thông tin về một chứng chỉ số mà người yêu cầu xác thực đưa ra. Nếu RA xác nhận thông tin của người cần xác thực, CA sau đó sẽ đưa ra một chứng chỉ.

Tuỳ thuộc vào việc triển khai cơ sở hạ tầng khoá công khai, chứng chỉ số sẽ bao gồm khoá công khai của người sở hữu, thời hạn hết hiệu lực của chứng chỉ, tên chủ sở hữu và các thông tin khác về chủ khoá công khai.

Cơ sở hạ tầng khoá công khai - PKI

Một PKI (public key infrastructure) cho phép người sử dụng của một mạng công cộng không bảo mật, chẳng hạn như Internet, có thể trao đổi dữ liệu và tiền một cách an toàn thông qua việc sử dụng một cặp mã khoá công khai và cá nhân được cấp phát và sử dụng qua một nhà cung cấp chứng thực được tín nhiệm. Nền tảng khoá công khai cung cấp một chứng chỉ số, dùng để xác minh một cá nhân hoặc tổ chức, và các dịch vụ danh mục có thể lưu trữ và khi cần có thể thu hồi các chứng chỉ số. Mặc dù các thành phần cơ bản của PKI đều được phổ biến, nhưng một số nhà cung cấp đang muốn đưa ra những chuẩn PKI riêng khác biệt. Một tiêu chuẩn chung về PKI trên Internet cũng đang trong quá trình xây dựng.

• Một Nhà cung cấp chứng thực số (CA) chuyên cung cấp và xác minh các chứng chỉ số. Một chứng chỉ bao gồm khoá công khai hoặc thông tin về khoá công khai

• Một nhà quản lý đăng ký (Registration Authority (RA) đóng vai trò như người thẩm tra cho CA trước khi một chứng chỉ số được cấp phát tới người yêu cầu

• Một hoặc nhiều danh mục nơi các chứng chỉ số (với khoá công khai của nó) được lưu giữ, phục vụ cho các nhu cầu tra cứu, lấy khoá công khai của đối tác cần thực hiện giao dịch chứng thực số.

• Một hệ thống quản lý chứng chỉ Nhà quản lý đăng ký - RA

Một nhà quản lý đăng ký (Registration Authority - RA) là một cơ quan thẩm tra trên một mạng máy tính, xác minh các yêu cầu của người dùng muốn xác thực một chứng chỉ số, và yêu cầu CA đưa ra kết quả. RA là một phần trong cơ sở hạ tầng khoá công khai PKI, một hệ thống cho phép các công ty và người dùng trao đổi các thông tin và hoạt động tài chính một cách an toàn bảo mật.

Trong luận văn này CA và RA được xậy dựng trên nền tảng Microsoft Certificate Service nên CA và RA sẽ do ngân hàng quản lý. Việc sử dụng hạ tầng PKI trong giao dịch HomeBanking có những lợi ích sau:

Mã hoá: Lợi ích đầu tiên của chứng chỉ số là tính bảo mật thông tin. Khi người gửi đã mã hoá thông tin bằng khoá công khai của bạn, chắc chắn chỉ có bạn mới giải mã được thông tin để đọc. Trong quá trình truyền thông tin qua Internet, dù có đọc được các gói tin đã mã hoá này, kẻ xấu cũng không thể biết được trong gói tin có thông tin gì. Đây là một tính năng rất quan trọng, giúp người sử dụng hoàn toàn tin cậy về khả năng bảo mật thông tin. Những trao đổi thông tin cần bảo mật cao, chẳng hạn giao dịch liên ngân hàng, ngân hàng điện tử, thanh toán bằng thẻ tín dụng, đều cần phải có chứng chỉ số để đảm bảo an toàn.

Chống giả mạo: Khi bạn gửi đi một thông tin, có thể là một dữ liệu hoặc một email, có sử dụng chứng chỉ số, người nhận sẽ kiểm tra được thông tin của bạn có bị thay đổi hay không. Bất kỳ một sự sửa đổi hay thay thế nội dung của thông điệp gốc đều sẽ bị phát hiện. Địa chỉ mail của bạn, tên domain... đều có thể bị kẻ xấu làm giả để đánh lừa người nhận để lây lan virus, ăn cắp thông tin quan trọng. Tuy nhiên, chứng chỉ số thì không thể làm giả, nên việc trao đổi thông tin có kèm chứng chỉ số luôn đảm bảo an toàn.

Xác thực: Khi bạn gửi một thông tin kèm chứng chỉ số, người nhận - có thể là đối tác kinh doanh, tổ chức hoặc cơ quan chính quyền - sẽ xác định rõ được danh tính của bạn. Có nghĩa là dù không nhìn thấy bạn, nhưng qua hệ thống chứng chỉ số mà bạn và người nhận cùng sử dụng, người nhận sẽ biết chắc chắn đó là bạn chứ không phải là một người khác.

Xác thực là một tính năng rất quan trọng trong việc thực hiện các giao dịch điện tử qua mạng, cũng như các thủ tục hành chính với cơ quan pháp quyền. Các hoạt động này cần phải xác minh rõ người gửi thông tin để sử dụng tư cách pháp nhân. Đây chính là nền tảng của một Chính phủ điện tử, môi trường cho phép công dân có thể giao tiếp, thực hiện các công việc hành chính với cơ quan nhà nước hoàn toàn qua mạng. Có thể nói, chứng chỉ số là một phần không thể thiếu, là phần cốt lõi của Chính phủ điện tử.

Chống chối cãi nguồn gốc: Khi sử dụng một chứng chỉ số, bạn phải chịu trách nhiệm hoàn toàn về những thông tin mà chứng chỉ số đi kèm. Trong trường hợp người gửi chối cãi, phủ nhận một thông tin nào đó không phải do mình gửi (chẳng hạn một đơn đặt hàng qua mạng), chứng chỉ số mà người nhận có được sẽ là bằng chứng khẳng định người gửi là tác giả của thông tin đó. Trong trường hợp chối cãi, CA cung cấp chứng chỉ số cho hai bên sẽ chịu trách nhiệm xác minh nguồn gốc thông tin, chứng tỏ nguồn gốc thông tin được gửi.

3.1.5 Kết hợp cả mã hoá và ký trong giao dịch HomeBanking

Một thông điệp envelop là một thông điệp được mã hoá và đáp ứng cho nhiều người nhận. Trong tiến trình xử lý đóng gói, một khoá phiên mã hoá được sinh ra và thông điệp được mã hoá với khoá phiên này. Khoá này được mã hoá bởi mỗi Publickey của người nhận. Thông điệp envelp bao gồm thông điệp mã hoá, certificate của người nhận và tập các khoá được mã hoá. Thông điệp được phát sinh theo chuẩn PKCS7/CMS. Các giao dịch của HomeBanking được sử dụng cả 02 kỹ thuật ký và mã hoá nội dung giao dịch.

3.1.5.1 Gửi một thông điệp Enveloped

Hình sau mô tả quá trình tạo một thông điệp envelop trước khi được gửi tới Ngân hàng.

Đoạn mã chương trình được viết bằng ngôn ngữ Visual Basic được dịch ra thư viện ACTIVEX. Cho phép bộ duyệt hoàn toàn gọi được các hàm trong thư viện(xin xem phụ lục)

Hình 25 Tiến trình tạo một thông điệp Envelop

 Dữ liệu plaintext được nhận vào

 Một khoá phiện được sinh ra

 Khoá đối xứng và thuật toán mã hoá được sử dụng để mã hoá dữ liệu

 Một bộ chứa chứng chỉ số được mở

 Chứng chỉ số của người nhận được đọc

 Khoá công khai được nhận từ chứng chỉ số của người nhận.

 Khoá đối xứng được mã hoá sử dụng khoá công khai của người nhận

 Những thông tin sau được bao gồm trong thông điệp envelop: Thuật toán mã hoá, dữ liệu mã hoá, khoá đối xứng mã hoá và cấu trúc thông tin của người nhận.

3.1.5.2 Giải mã một thông điệp Enveloped

Giao dịch được gửi tới Ngân hàng và được giải mã, kiểm tra chữ ký điện tử như sau. Hình sau mô tả quá trình giải mã thông điệp envelop

Một phần của tài liệu Ứng dụng thiết bị Ikey 2000 để triển khai xác thực giao dịch HomeBanking (Trang 59)