Trung tâm Giám sát, điều hành đô thị thông minh thành phố Huế
  • Giới thiệu
  • Tin tức
    • Tin hoạt động lãnh đạo
    • Tin chuyên ngành
    • Tin tức khác
  • Giải pháp & dịch vụ
    • Truyền thông
    • Tư vấn dự án
    • Kiểm thử phần mềm
    • Số hoá và biên tập dữ liệu GIS
  • Tài liệu - Ứng dụng
Trung tâm Giám sát, điều hành đô thị thông minh thành phố Huế
  • Trang chủ
  • Giới thiệu
  • Tin tức
    • Tin hoạt động lãnh đạo
    • Tin chuyên ngành
    • Tin tức khác
  • Giải pháp & dịch vụ
    • Truyền thông
    • Tư vấn dự án
    • Kiểm thử phần mềm
    • Số hoá và biên tập dữ liệu GIS
  • Tài liệu - Ứng dụng
  1. Trang chủ
  2. Tin chuyên ngành
  3. Chi tiết
Aa

Tin chuyên ngành

Tiêu chuẩn kỹ thuật về ƯDCNTT trong CQNN: Tiêu chuẩn SSL – Giao thức an toàn tầng giao vận
Chủ Nhật, 05/10/2014 03:42
Tổng quan về SSL: Tiêu chuẩn Secure Socket Layer (SSL) – Giao thức an toàn tầng giao vận là một tiêu chuẩn ban đầu do Netscape Communications phát triển ngay sau khi Trung tâm Quốc gia Ứng dụng siêu máy tính (National Center for Supercomputing Applications - NCSA) phát hành Mosaic 1.0, trình duyệt web phổ biến đầu tiên vào năm 1993.

Tám tháng sau, vào giữa năm 1994, Netscape Communications đã hoàn thành thiết kế cho SSL phiên bản 1 (SSL 1.0). Phiên bản này chỉ lưu hành nội bộ và chưa bao giờ được công bố ra bên ngoài vì nó đã có một số sai sót. Ví dụ, nó không cung cấp bảo vệ toàn vẹn dữ liệu. Kết hợp với việc sử dụng thuật toán mã hóa dòng RC4 để mã hóa dữ liệu, điều này cho phép một tin tặc thay đổi thông điệp gốc có thể dự đoán được. Ngoài ra, SSL 1.0 không sử dụng số thứ tự, vì vậy nó dễ bị tổn thương để chống lại các cuộc tấn công. Sau đó, các nhà thiết kế của SSL 1.0 thêm số thứ tự và bít kiểm tra, nhưng SSL 1.0 vẫn sử dụng thuật toán kiểm tra lỗi dư thừa theo chu kỳ (Cyclic Redundancy Check - CRC) thay vì sử dụng một hàm băm mã hóa mạnh mẽ. Đến cuối năm 1994, Netscape Communications đã phát triển SSL phiên bản 2 (SSL 2.0) và công bố chính thức vào tháng 2/1995 nhưng chứa nhiều lỗi nghiêm trọng nên dẫn đến phải phát triển SSL phiên bản 3 (SSL 3.0). SSL 3.0 do tổ chức Internet Engineering Task Force (IETF) - Nhóm chuyên trách kỹ thuật Internet công bố vào tháng 11/1996 tại RFC 6101 nhưng chỉ ở dạng bản nháp và chưa bao giờ được phát hành chính thức.Các phiên bản tiếp theo của SSL cũng như TLS sẽ dựa trên SSL 3.0 để phát triển.

SSL là một giao thức có phân lớp. Tại mỗi lớp, các thông điệp có thể có các trường như trường độ dài, mô tả và nội dung. SSL có thể phân mảnh gói dữ liệu ban đầu thành nhiều khối dữ liệu nhỏ hơn có thể quản lý, tùy chọn nén dữ liệu, áp dụng một hàm băm Mã xác thực thông điệp (Message Authentication Code - MAC), mã hóa và truyền dữ liệu đi. Dữ liệu nhận về sẽ được giải mã, xác nhận, giải nén và tổng hợp lại, sau đó được chuyển tới các thành phần khác ở mức cao hơn.

Các mục tiêu của SSL 3.0 theo thứ tự ưu tiên là:

(i) An ninh mã hóa

SSL nên được sử dụng để thiết lập một kết nối an toàn giữa hai bên.

(ii) Khả năng liên thông

Các nhà phát triển phần mềm độc lập có thể phát triển ứng dụng sử dụng SSL 3.0 có thể trao đổi các tham số mã hóa mà không cần hiểu hết mã nguồn của người khác.

Không phải tất cả các trường hợp có thể kết nối thành công (ngay cả trong cùng lớp ứng dụng). Ví dụ, nếu máy chủ hỗ trợ thiết bị phần cứng cụ thể và máy khách không có quyền truy cập thiết bị phần cứng đó thì kết nối sẽ không thành công.

(iii) Khả năng mở rộng

SSL nhằm tạo ra một khung cho phép phương pháp khóa công khai và mã hóa số lượng lớn mới tạo ra có thể kết hợp với nhau khi cần thiết. Điều này cũng sẽ thực hiện hai mục tiêu khác: tránh tạo ra một giao thức mới (rủi ro vì có thể có điểm yếu mới) và tránh phải xây dựng toàn bộ một thư viện bảo mật mới.

(iv) Hiệu quả tương đối

Việc mã hóa có xu hướng sử dụng tài nguyên CPU cao, đặc biệt là quá trình trao đổi khóa công khai. Vì lý do này, SSL đã kết hợp một thủ tục lưu trữ bộ nhớ đệm theo phiên tùy chọn để giảm số lượng kết nối cần được thiết lập từ đầu. Ngoài ra, SSL cũng xem xét thực hiện giảm hoạt động mạng.

Chức năng và hoạt động của SSL

SSL là một giao thức theo mô hình khách/chủ (client/server) cung cấp các dịch vụ bảo mật cơ bản trong việc kết nối ngang hàng sau đây:

• Các dịch vụ xác thực;

• Các dịch vụ kết nối bảo mật;

• Các dịch vụ kết nối toàn vẹn (không phục hồi).

SSL cung cấp dịch vụ kết nối an ninh có ba đặc tính cơ bản:

- Kết nối bí mật. Mã hóa được sử dụng sau khi thiết lập kết nối để xác định một khóa bí mật. Mã hóa đối xứng được sử dụng để mã hóa dữ liệu (ví dụ các tiêu chuẩn mã hóa: Data Encryption Standard - DES, 3DES – Triple Data Encryption Standard, RC4).

- Định danh của điểm kết nối có thể được xác thực bằng cách sử dụng mã hóa bất đối xứng hoặc khóa công khai (ví dụ như Rivest-Shamir-Adleman - RSA, Digital Signature Standard - DSS).

- Kết nối đáng tin cậy. Thông điệp vận chuyển thông báo bao gồm kiểm tra tính toàn vẹn thông điệp sử dụng một MAC, hàm băm an toàn được sử dụng để tính toán MAC ví dụ SHA, MD5.

Mặc dù thực tế giao thức SSL sử dụng mật mã khóa công khai nhưng nó không cung cấp dịch vụ chống chối bỏ, không chống chối bỏ cho bằng chứng về nguồn gốc cũng như không chống chối bỏ cho bằng chứng đã truyền tin. Điều này trái ngược hẳn với giao thức an toàn truyền siêu văn bản (Secure Hypertext Transfer Protocol, S-HTTP) và ký số ngôn ngữ đánh dấu mở rộng (Extensible Markup Language Signature- XML Signature). Như tên gọi của nó, giao thức SSL định hướng theo cửa giao tiếp mạng, có nghĩa là tất cả hoặc không có dữ liệu gửi hoặc nhận nào được mã hóa bảo vệ từ một cửa giao tiếp mạng theo cùng một cách.

SSL được xem như một tầng trung gian tốt nhất giữa tầng giao vận và tầng ứng dụng trong mô hình TCP/IP. SSL có hai chức năng chính sau:

- Thứ nhất là thiết lập một kênh kết nối an toàn giữa các điểm giao tiếp (ví dụ, xác thực và bảo mật).

- Thứ hai, SSL sử dụng kết nối này để truyền tải dữ liệu của giao thức ở tầng cao hơn từ nơi gửi đến nơi nhận một cách an toàn. Do đó, nó chia dữ liệu thành các phần nhỏ hơn và xử lý từng phần dữ liệu đã chia đó, mỗi phần có thể được nén, xác thực với một MAC, mã hóa, thêm vào trước với một tiêu đề và được truyền đến nơi nhận. Mỗi phần dữ liệu được xử lý và chuẩn bị theo cách này được gọi là một bản ghi SSL.

- Về phía người nhận, các bản ghi SSL phải được giải mã, xác nhận (sử dụng MAC của mình), giải nén, và tập hợp lại, trước khi dữ liệu có thể được gửi đến các tầng cao hơn tương ứng, thường là tầng ứng dụng. Vị trí của giao thức SSL được minh họa trong Hình 1. Nó bao gồm hai lớp con và một số giao thức thành phần:



 

Hình 1: Quan hệ giữa SSL và các giao thức

(Nguồn:SSL and TLS: Theory and Practice, Rolf Oppliger)

- Lớp thấp hơn gọi là Lớp bản ghi (Record Layer), bao gồm Giao thức bản ghi SSL (SSL Record Protocol), nằm trên tầng giao vận, một số giao thức trong tầng giao vận như Giao thức điều khiển truyền vận (TCP), Giao thức truyền vận không tin cậy (UDP).

- Lớp cao hơn gọi là Lớp thiết lập (Handshake Layer)nằm trên lớp chứa Giao thức bản ghi SSLbao gồm bốn giao thức:

• Giao thức thiết lập SSL (SSL Handshake Protocol) là giao thức cốt lõi của SSL, nó cho phép các điểm giao tiếp xác thực lẫn nhau và thoả thuận cách thức mã hóa và phương pháp nén. Cách thức mã hóa được sử dụng để mã hóa bảo vệ dữ liệu về tính xác thực, tính toàn vẹn và tính bí mật, trong khi đó phương pháp nén là tùy chọn để nén dữ liệu.

• Giao thức đặc tả mã hóa thay đổi SSL (SSL Change Cipher Spec Protocol) cho phép các điểm giao tiếp thông báo thay đổi cách thức mã hóa. Trong khi Giao thức thiết lập SSL được sử dụng để thỏa thuận các tham số bảo mật, thì Giao thức đặc tả mã hóa thay đổi SSL được sử dụng để đặt các tham số vào đúng vị trí và làm chúng hoạt động có hiệu quả.

• Giao thức cảnh báo SSL (SSL Alert Protocol) cho phép các điểm giao tiếp báo hiệu các vấn đề có thể xảy ra và trao đổi thông điệp cảnh báo tương ứng.

• Giao thức dữ liệu ứng dụng SSL (SSL Application Data Protocol) được sử dụng cho chức năng thứ hai của SSL đề cập ở trên (ví dụ truyền tải an toàn của dữ liệu ứng dụng). Giao thức này là thành phần hoạt động chính thực tế của SSL: nó lấy dữ liệu từ tầng cao hơn, thường là tầng ứng dụng và chuyển cho Giao thức bản ghi SSLđể bảo vệ mã hóa và bảo đảm an toàn việc truyền dẫn. 

Các trạng thái phiên làm việc và kết nối của SSL

 

- Một phiên làm việc của SSL có trạng thái. Đây là nhiệm vụ của Giao thức thiết lập SSL để điều phối các trạng thái của máy khách và máy chủ, do đó cho phép giao thức quản lý cơ chế làm việc của mỗi máy để hoạt động thống nhất mặc dù hành động không diễn ra đồng thời.

- Có hai trạng thái làm việc, một là trạng thái hoạt động hiện tại (trong quá trình thiết lập giao thức), hai là trạng thái chờ. Bên cạnh đó, cũng phân biệt các trạng thái đọc và ghi để duy trì cơ chế làm việc. Khi máy khách hay máy chủ nhận một thông báo đặc tả thay đổi mã hóa, nó sao chép trạng thái chờ đọc vào trạng thái đọc hiện tại. Khi máy khách hay máy chủ gửi một thông báo đặc tả thay đổi mã hóa, nó sao chép trạng thái chờ ghi vào trạng thái ghi hiện tại. Khi quá trình thỏa thuận thiết lập hoàn thành, máy khách và máy chủ trao đổi các thông điệp đặc tả thay đổi mã hóa và bắt đầu giao tiếp bằng cách sử dụng những đặc tả mã hóa đã thỏa thuận trước đó.

- Một phiên làm việc SSL có thể bao gồm nhiều kết nối an toàn, bên cạnh đó, các bên tham gia có thể có nhiều phiên làm việc khác nhau đồng thời.

- Một trạng thái phiên làm việc bao gồm các tham số sau đây:

• Định danh phiên làm việc (session identifier): Là một byte bất kỳ có thứ tự được chọn bởi máy chủ để xác định một trạng thái phiên làm việc đang hoạt động hoặc có thể khôi phục lại trạng thái phiên làm việc hiện tại.

• Chứng thư của thành phần tham gia (peer certificate): X509.v3, chứng thư của thành phần tham gia, tham số này có thể bỏ trống.

• Phương pháp nén (compression method): Thuật toán sử dụng để nén dữ liệu trước khi mã hóa.

• Đặc tả mã hóa (cipher spec): Xác định thuật toán mã hóa dữ liệu lớn (ví dụ như DES..) và một thuật toán MAC (ví dụ MD5 hay SHA). Nó cũng định nghĩa các thuộc tính mã hóa, ví dụ kích thước băm (hash_size).

• Mã bí mật chính (master secret): Một thông điệp bí mật có kích thước 48 byte được chia sẻ giữa máy khách và máy chủ.

• Có thể khôi phục (is resumable): Một chỉ báo phiên làm việc có thể được sử dụng để khởi tạo các kết nối mới.

- Trạng thái kết nối bao gồm các thành phần sau:

• Số thứ tự máy chủ và máy khách ngẫu nhiên (server and client random): Là một byte sắp thứ tự được chọn bởi máy chủ và máy khách trong từng phiên làm việc.

• Máy chủ ghi mã MAC bí mật (server write MAC secret): Mã bí mật được máy chủ ghi ra trong quá trình thực hiện MAC.

• Máy khách ghi mã MAC bí mật (client write MAC secret): Mã bí mật được máy khách ghi ra trong quá trình thực hiện MAC.

• Khóa máy chủ ghi (server write key): Khóa mã được sử dụng để mã hóa dữ liệu bởi máy chủ và giải mã của máy khách.

• Khóa máy khách ghi (client write key): Khóa mã được sử dụng để mã hóa dữ liệu bởi máy khách và giải mã của máy chủ.

• Các véc-tơ khởi tạo (initialization vectors): Khi một khối mã hóa trong mô hình mã hóa theo khối (Cipher Block Chaining - CBC) được sử dụng, một véc-tơ khởi tạo được sinh ra cho từng khóa. Trường này đầu tiên được khởi tạo bởi Giao thức thiết lập SSL, sau đó khối mã hóa cuối cùng từ mỗi bản ghi được lưu trữ để sử dụng cho bản ghi tiếp theo.  

• Số thứ tự (sequence numbers): Mỗi bên tham gia trong phiên làm việc quản lý những số thứ tự riêng biệt để truyền và nhận thông điệp trong mỗi kết nối. Khi một bên gửi hoặc nhận một thông điệp đặc tả mã hóa thay đổi, số thứ tự tương ứng được đặt bằng 0. Các số thứ tự có dạng số nguyên và giá trị không được vượt quá 264 – 1.

Ứng dụng

SSL được phát triển cho phép trao đổi riêng tư trên mạng Internet, cho phép các ứng dụng khách/chủ giao tiếp an toàn, ngăn ngừa tấn công, bóc tách dữ liệu hay phá hủy thông điệp trái phép như an toàn truyền siêu văn bản, an toàn trao đổi thư điện tử… Trong Thông tư số 01/2011/TT-BTTTT ngày 04/01/2011 của Bộ trưởng Bộ Thông tin và Truyền thông Công bố Danh mục tiêu chuẩn kỹ thuật về ứng dụng công nghệ thông tin trong cơ quan nhà nước quy định Bắt buộc áp dụng tiêu chuẩn SSL phiên bản 3.0 và được xếp vào nhóm Tiêu chuẩn về an toàn thông tin.

 

 

Trần Việt Cường, Cục Tin học hóa (aita.gov.vn)

Bài viết liên quan

Tiêu chuẩn kỹ thuật về ƯDCNTT trong CQNN: Tiêu chuẩn SOAP - Giao thức truy cập đối tượng đơn giản
Tiêu chuẩn kỹ thuật về ƯDCNTT trong CQNN: Tiêu chuẩn CSS – Giao thức định kiểu theo tầng
Một số mô hình đánh giá chính phủ điện tử trên thế giới

HUE IOC

Trung tâm Giám sát, điều hành đô thị thông minh thành phố Huế

Thông tin trung tâm
Địa chỉ: 36 Phạm Văn Đồng, phường Vỹ Dạ, thành phố Huế
Số điện thoại: 02343.896.555
Email: hueioc@hue.gov.vn
Theo dõi chúng tôi tại
Tải ứng dụng HUE-S

© Trung tâm Giám sát, điều hành đô thị thông minh thành phố Huế

Ghi nguồn từ https://dttm.hue.gov.vn khi phát hành lại thông tin từ website này