Hàm băm MD5 (còn đƣợc gọi là hàm tóm tắt thông điệp - message degests) sẽ trả về một chuổi số thập lục phân gồm 32 số liên tiếp.
Dƣới đây là các ví dụ mô tả các kết quả thu đƣợc sau khi băm: MD5(“matkhau”)= 9e107d9d372bb6826bd81d3542a419d6. MD5("honganh") = 1055d3e698d289f2af8663725127bd4b.
3.3. THUẬT TOÁN XỬ LÝ CHUỖI Cắt chuỗi
3.3.1.
Thuật toán cắt chuỗi xử lý tại server, server sẽ gửi yêu cầu cho client để lấy chuỗi ở đây chính là tên và mật khẩu đăng nhập của ngƣời dùng từ cookie, sau khi nhận chuỗi server sẽ xử lý cắt lấy chuỗi chứa tên ngƣời dùng sau đó trả về “name” chính ta tên ngƣời dùng để kiểm tra với cơ sở dữ liệu.
SVTH: Trần Thị Hồng Ánh – Lớp 09CNTT2 55
Mô tả thuật toán:
o Input: Nhận vào một chuỗi từ client.
o Output: Cắt chuỗi và trả về chuỗi cần tìm. Quá trình xử lý:
function getName(req, res) {
var name, password, namePassword, str;
if ( typeof req.cookies.auth !== "undefined") { namePassword = req.cookies.auth; str = namePassword.split("."); name = str[0]; password = str[1]; } return name; } Đọc chuỗi 3.3.2.
Thuật toán đọc chuỗi đƣợc xử lý tại client, đọc tên đăng nhập của ngƣời dùng từ cookie sau đó tiến hành kiểm tra để xác nhận là ngƣời dùng đã đăng nhập hay chƣa.
Mô tả thuật toán:
o Input: Nhận vào một chuỗi đọc từ cookie
o Output: Đọc và lấy chuỗi cần tìm.
Quá trình xử lý:
function readCookie (name) { var nameCk = name + "=",
splitCk = document.cookie.split(';'), len = splitCk.length;
for (var i=0; i < len; i++) { var c = splitCk[i];
SVTH: Trần Thị Hồng Ánh – Lớp 09CNTT2 56 while(c.charAt(0)=='')c = c.substring(1, c.length); if (c.indexOf(nameCk) == 0)
return c.substring(nameCk.length, c.length); }
return null; }
SVTH: Trần Thị Hồng Ánh – Lớp 09CNTT2 57
CHƢƠNG 4. TRIỂN KHAI VÀ ĐÁNH GIÁ KẾT QUẢ
4.1. TRIỂN KHAI XÂY DỰNG Yêu cầu hệ thống Yêu cầu hệ thống
4.1.1.
Chạy trên nền web hỗ trợ các trình duyệt của Smartphone nhƣ: chrome, safari, opera.
Các yêu cầu về cài đặt
4.1.2.
4.1.2.1. Node.js
Phiên bản cài đặt cho ứng dụng là 0.8.18.
Có thể tải trực tiếp Node.js từ trang chủ: http://nodejs.org, trƣớc hết ta phải cài đặt gói dependencies:
$ sudo apt-get install g++ curl libssl-dev apache2- utils
Sau đó thực hiện các lệnh:
$ cd <thư mục chứa node> $ ./configure
$ make
$ sudo make install
Sau khi hoàn tất quá trình cài đặt chúng ta có thể kiểm tra xem Node.js đã đƣợc cài đặt hay chƣa bằng lệnh $ node, nếu xuất hiện con trỏ chuột phía sau ký tự „>‟ thì Node.js đã đƣợc cài đặt thành công.
4.1.2.2. Module dependencies
Để chạy đƣợc server chúng ta tiến hành cài đặt các dependencies của ứng dụng đƣợc liệt kê trong file package.json
"dependencies": {
"express": "3.1.0", "jade": "*",
SVTH: Trần Thị Hồng Ánh – Lớp 09CNTT2 58 "crypto": "0.0.3", "async": "0.2.6", "connect": "2.7.7", "cookie": "0.1.0", }
Sử dụng NPM (Node Package Manager) chúng ta có thể dễ dàng cài đặt:
$ sudo npm install
Sau khi cài đặt thành công các dependencies ta có thể chạy server Node.js bằng lệnh sau:
$ node app