Secure Socket Layer - Tài Liệu về SSL
Secure Socket Layer SSL là giao thức đa mục đích được thiết kế để tạo ra các giao tiếp giữa hai chương trình
ứng dụng trên một cổng định trước (socket 443) nhằm mã hoá toàn bộ thông tin đi/đến,
được sử dụng trong giao dịch điện tử như truyền số liệu thẻ tín dụng, mật khẩu, số bí mật
cá nhân (PIN) trên Internet.
Trong các giao dịch điện tử trên mạng và trong các giao dịch thanh toán trực tuyến, thông
tin/dữ liệu trên môi trường mạng Internet không an toàn thường được bảo đảm bởi cơ chế
bảo mật thực hiện trên tầng vận tải có tên Lớp cổng bảo mật SSL (Secure Socket Layer) -
một giải pháp kỹ thuật hiện nay được sử dụng khá phổ biến trong các hệ điều hành mạng
máy tính trên Internet. SSL là giao thức đa mục đích được thiết kế để tạo ra các giao tiếp
giữa hai chương trình
ứng dụng trên một cổng định trước (socket 443) nhằm mã hoá toàn
bộ thông tin đi/đến, được sử dụng trong giao dịch điện tử như truyền số liệu thẻ tín dụng,
mật khẩu, số bí mật cá nhân (PIN) trên Internet. Giao thức SSL được hình thành và phát
triển đầu tiên nǎm 1994 bởi nhóm nghiên cứu Netscape dẫn dắt bởi Elgammal, và ngày
nay đã trở thành chuẩn bảo mật thực hành trên mạng Internet. Phiên bản SSL hiện nay là
3.0 và vẫn đ
ang tiếp tục được bổ sung và hoàn thiện. Tương tự như SSL, một giao thức
khác có tên là Công nghệ truyền thông riêng tư PCT (Private Communication
Technology) được đề xướng bởi Microsoft, hiện nay cũng được sử dụng rộng rãi trong
các mạng máy tính chạy trên hệ điều hành Windows NT. Ngoài ra, một chuẩn của Nhóm
đặc trách kỹ thuật Internet IETF (Internet Engineering Task Force) có tên là Bảo mật lớp
giao vận TLS (Transport Layer Security) dựa trên SSL cũng được hình thành và xuất bản
dưới khuôn khổ nghiên cứu của IETF Internet Draft
được tích hợp và hỗ trợ trong sản
phẩm của Netscape.
Chứng chỉ
điện tử thường được xác nhận rộng rãi bởi một cơ quan trung gian (Thẩm
quyền xác nhận CA - Certificate Authority) như RSA Data Sercurity hay VeriSign Inc.,
một dạng tổ chức độc lập, trung lập và có uy tín. Các tổ chức này cung cấp dịch vụ "xác
nhận" số nhận dạng của một công ty và phát hành chứng chỉ duy nhất cho công ty đó như
là bằng chứng nhận dạng (identity) cho các giao dịch trên mạng, ở đây là các máy chủ
webserver.
Sau khi kiểm tra ch
ứng chỉ điện tử của máy chủ (sử dụng thuật toán mật mã công khai,
như RSA tại trình máy trạm), ứng dụng máy trạm sử dụng các thông tin trong chứng chỉ
điện tử để mã hoá thông điệp gửi lại máy chủ mà chỉ có máy chủ đó có thể giải mã. Trên
cơ sở đó, hai ứng dụng trao đổi khoá chính (master key) - khoá bí mật hay khoá đối xứng
- để làm cơ sở cho việc mã hoá luồng thông tin/d
ữ liệu qua lại giữa hai ứng dụng chủ
khách. Toàn bộ cấp độ bảo mật và an toàn của thông tin/dữ liệu phụ thuộc vào một số
tham số:
(i) Số nhận dạng theo phiên làm việc ngẫu nhiên;
(ii) Cấp độ bảo mật của các thuật toán bảo mật áp dụng cho SSL;
(iii) Độ dài của khoá chính (key length) sử dụng cho lược đồ mã hoá thông tin.
Các thuật toán mã hoá và xác thực của SSL được sử dụng bao gồm ( Ver 3.0 )(1) DES - chuẩn mã hoá dữ liệu (ra đời nǎm 1977), phát minh và sử dụng của chính phủ
Mỹ;
(2) DSA - thuật toán chữ ký điện tử, chuẩn xác thực điện tử, phát minh và sử dụng của
chính phủ Mỹ;
(3) KEA - thuật toán trao đổi khoá, phát minh và sử dụng của chính phủ Mỹ;
Các phương thức tấn công (hay bẻ khoá) của các thuật toán bảo mật thường dùng dựa
trên phương pháp "tấn công vét cạn" (brute-force attack) bằng cách thử-sai miền không
gian các giá trị có thể của khoá. Số phép thử-sai tăng lên khi độ dài khoá tăng và dẫn đế
n
vượt quá khả năng và công suất tính toán, kể cả các siêu máy tính hiện đại nhất. Thí dụ,
với độ dài khoá là 40bit, thì số phép thử sẽ là 240=1,099,511,627,776 tổ hợp. Tuy nhiên
độ dài khoá lớn kéo theo tốc độ tính toán giảm (theo luỹ thừa nghịch đảo) và dẫn đến khó
có khả năng áp dụng trong thực tiễn. Một khi khoá bị phá, toàn bộ thông tin giao dịch
trên mạng sẽ bị kiểm soát toàn bộ. Tuy nhiên do độ dài khoá lớn (thí dụ 128, 256 bít), số
phép thử-sai trở
nên "không thể thực hiện" vì phải mất hàng năm hoặc thậm chí hàng
nghìn năm với công suất và năng lực tính toán của máy tính mạnh nhất hiện nay.
Ngay từ năm 1995, bản mã hoá 40bit đã bị phá bởi sử dụng thuật toán vét cạn. Ngoài ra,
một số thuật toán bảo mật (như DES 56bit, RC4, MD4, ) hiện nay cũng bị coi là không
an toàn khi áp dụng một số phương pháp và thuật toán tấn công đặc biệt. Đã có một số đề
nghị thay đổi trong luật pháp Mỹ nhằm cho phép sử dụng rộng rãi các phần mềm mã hoá
sử dụng mã hoá 56bit song hiện nay vẫn chưa được chấp thuận.
Một số thách thức và phá khoá về bảo mật
Trong cộng đồng những người làm bảo mật (security), một trong các phương pháp kiểm
tra độ độ bảo mật/an toàn của các thuật toán bảo mật, ngoài cơ sở lý thuyết của thuật
toán, là đưa ra các "thách thức" (challenge) với số tiền thưởng tượng trưng, nhằm kiểm
tra tính thực tiễn của thuật toán. Sau đây là một số thông tin tham khảo:
ã Ngày 14 tháng 7 nǎm 1995, Hal Finney đặt một thách thức SSL đầu tiên một bản ghi
phiên làm việc của trình duyệt Netscape sử dụng thuật toán RC4-128-EXPORT-20. Ngày
16 tháng 8 nǎm 1995, David Byers và Eric Young cùng với Adam Back đã phá thách
dựng dựa trên sơ đồ gồm các lớp bảo mật nhiều tầ
ng độc lập (thí dụ: giao thức Giao dịch
điện tử bảo mật SET (Secure Electronic Transaction), Giao thức khoá Internet IKP
(Internet Keyed Protocol) hoặc PGP (Pretty Good Privacy), thậm chí cả phần cứng, nhằm
hạn chế tối đa các "lỗ hổng" bảo mật của hệ thống giao thương điện tử. Ngoài ra cũng cần
lưu ý các sản phẩm về bảo mật ứng dụng hiện nay trên mạng máy tính phần lớn được
phát minh từ
Mỹ, được bảo hộ và kiểm soát chặt chẽ bởi luật pháp Mỹ dẫn đến khi thực
hành xây dựng và triển khai các hệ thống thông tin và giao dịch thương mại điện tử của
chúng ta cần thận trọng và cân nhắc. Sưu tầm . Khái niệm về Bandwith
1/ Khái niệm :
Trước hết, chúng ta hãy tìm hiểu nghĩa của từ này
Bandwidth, theo Lạc Việt Từ Điển có nghĩa là "dải tần ( dải tần số )", hay theo một số
trang web thì nó là "băng thông". Thực ra nếu những ai hoạt động trong lĩnh vực viễn
thông thì chắc sẽ hiểu rõ hơn về khái niệm này. Tuy nhiên, chúng ta hãy cùng nhau lướt
qua 1 số định nghĩa về bandwidth :
- Khái niệm Bandwidth (the width of a band of electromagnetic frequencies) ( dịch nôm
na là độ rộ
ng của một dải tần số điện từ ), đại diện cho tốc độ truyền dữ liệu của một
đường truyền, hay, chuyên môn một chút, là độ rộng (width) của một dải tần số mà các
tính hiệu điện tử chiếm giữ trên một phương tiện truyền dẫn.
- Nói chung, bandwidth đồng nghĩa với số lượng dữ liệu được truyền trên một đơn v
sẽ có 1000 lượt người xem trang web đó trong 1 tháng, như thế, bandwidth trong một
tháng của bạn sẽ là 35K*1000 = 35000K ( xấp xỉ 34MB ). Với 10 trang web như vậy, bạn
tốn 340MB bandwidth .
Với cách tính như vậy, nếu website của bạn là website cá nhân, 500MB bandwidth là khá
nhiều, nhưng vấn đề sẽ khác nếu bạn có một website lớn, nhiều người truy cập.
Diendantinhoc.net cách đ
ây 1 hay 2 tháng, với 10GB bandwidth, đã quá tải với hàng
nghìn lượt truy cập trong 1 tháng , và không hoạt động được nữa, sau cùng họ phải bỏ bớt
phòng chat đi để tiết kiệm bandwidth. Và nếu diendantinhoc.net là một website thương
mại, thì chắc họ sẽ phải lỗ to khi ngưng hoạt động 1 thời gian như vậy ( May mắn là
không ). Tiết kiệm là quốc sách ! Vậy làm thể nào để tiết kiệm ?
3 / Tiết kiệm bandwidth :
Có 3 điể
m mấu chốt :
+ Giữ cho trang web của bạn càng nhỏ càng tốt : Điều ngày có nghĩa, hãy lưu ý kỹ đến
mã HTML của bạn, cái gì bỏ đi được thì bỏ đi, loại bỏ các khoảng trắng không cần
thiết,vv ( thế mới thấy rõ hơn, HTML thật quan trọng :-p ). Nén hình ảnh của bạn tới
mức có thể. Ví dụ khi thiết kế hình ảnh trong Photoshop, bạn có thể chọn chức năng save
for web, và giảm chất lượng của nó đi miễn là hình ảnh vẫn còn chấp nhận được. Và, nên
nhớ, dùng kiểu JPG cho các bức ảnh ( photos ), kiểu GIF cho các hình đồ hoạ ( graphics
).
+ Sử dụng những hình ảnh không lưu trữ trên máy chủ của bạn : Điều này là khá đơn
giản, khi bạn tìm thấy 1 hình vừa ý ở 1 trang nào đó, thay vì download về và đưa lên máy
chủ của mình, bạn chỉ việc trỏ thẳng tới địa chỉ
của hình đó ( ví dụ <img src =
Digimarc,vv
+ Còn một số phương pháp nữa, hiệu quả hay không là tuỳ thuộc vào kh
ả năng của bạn,
ví dụ như dùng lệnh trong file .htaccess, hoặc sử dụng sức mạnh của các ngôn ngữ lập
trình web như perl, php, vv
5/ Kết :
Nếu bạn chỉ có ý định xây dựng 1 website cá nhân, đem vào đó những tâm tư, sở thích
của mình, với vài chục người bạn ghé thăm, bạn không phải quá quan tâm tới vấn đề này.
Nhưng xin hãy có 1 cái nhìn nghiêm túc nếu bạn muốn thực hiện một cái gì đó l
ớn hơn,
thu hút nhiều người hơn, và nhất là khi bạn muốn trở thành 1 webmaster thực thụ .
Hiểu biết về bandwidth giúp bạn có chiến lược tốt hơn cho website của mình, dễ dàng lựa
chọn khi đăng ký host, và tránh được nhưng rủi ro không đáng có.
Bạn có thể vào website http://bandwidth.com/
để tìm hiểu kỹ hơn về khái niệm này.