Codeigniter cung cấp một lớp mã hóa được sử dụng để bảo vệ dữ liệu bí mật được lưu trữ trên hệ thống máy tính hoặc dữ liệu được truyền qua mạng. Nó cung cấp các kỹ thuật mã hóa dữ liệu hai chiều như phần mở rộng Mcrypt PHP và Open SSL
Khóa là gì?
Trong mật mã học, khóa là thông tin thực hiện thuật toán chuyển đổi một chuỗi hoặc một văn bản rõ thành văn bản được mã hóa và nó cũng cho phép chuyển đổi văn bản được mã hóa thành văn bản được giải mã. Trên thực tế, nó cho phép bạn chọn một khóa có thể giúp giải mã dữ liệu đã được mã hóa bằng khóa đó
Tải một lớp mã hóa
Trước khi sử dụng lớp được mã hóa trong Codeigniter, bạn phải tải vào tệp bộ điều khiển
cú pháp
$this -> load-> library [ ‘encrypt’ ];
Có nhiều chức năng khác nhau có sẵn trong thư viện lớp mã hóa
- mã hóa[]. Như tên định nghĩa, một hàm encode[] được sử dụng để mã hóa một chuỗi hoặc dữ liệu bí mật bằng cách sử dụng khóa mã hóa
cú pháp
encode[ $string [, $key = ‘’ ]];
Nó có hai tham số
$chuỗi. Trong trường này, bạn có thể chuyển dữ liệu bí mật hoặc chuỗi có thể được mã hóa
khóa $. Nó xác định một khóa bí mật, giúp chuyển đổi một chuỗi hoặc tin nhắn đơn giản sang định dạng bí mật
Tạo tệp điều khiển Tests_encrypt. php và lưu nó vào ứng dụng/bộ điều khiển/Tests_encrypt. php. Sau đó, viết chương trình sau vào tệp điều khiển
Tests_encrypt. php
Bây giờ hãy thực thi chương trình trong localhost bằng cách gọi URL localhost/CodeIgniter-3. 1. 11/ Chức năng Tests_encrypt/set_mode;
Mã hóa và giải mã trong CodeIgniter
Bước 1
Để khởi tạo lớp mã hóa, người ta phải tải thư viện như hình bên dưới
$this->load->library['encrypt'];
Để thiết lập khóa của bạn, hãy truy cập application/config/config. php, mở tệp và đặt
$config['encryption_key'] = "KHÓA CỦA BẠN";
Dưới đây chúng tôi đã tạo một ví dụ để hiển thị, cách mã hóa và giải mã dữ liệu
Để mã hóa mã, chúng tôi đã sử dụng cú pháp dưới đây
$this->encrypt->encode[] // Thực hiện mã hóa dữ liệu và trả về dưới dạng chuỗi
Để giải mã sử dụng mã
$this->encrypt->decode[] // Giải mã một chuỗi đã mã hóa
Mã hóa và giải mã dữ liệu không là gì ngoài việc chuyển đổi một văn bản thuần túy thành một thứ gì đó có vẻ ngẫu nhiên và vô nghĩa và ngược lại
Nói chung, mã hóa này được các nhà phát triển chọn để bảo mật dữ liệu như mật khẩu, URL, số thẻ tín dụng, v.v.
Nếu bạn đang sử dụng CodeIgniter thì việc mã hóa dữ liệu trở nên dễ dàng hơn nhiều so với mã PHP gốc
Tăng dần. I. cung cấp lớp mã hóa riêng mà bạn có thể sử dụng để mã hóa hoặc giải mã dữ liệu
Để khởi tạo lớp mã hóa, người ta phải tải thư viện như hình bên dưới
$this->load->library['encrypt'];
Ngay sau khi nó được tải, thì đối tượng thư viện Mã hóa sẽ khả dụng bằng cách sử dụng. $this->mã hóa
Nhưng trước khi thực hiện tất cả các quy trình này, người ta phải yêu cầu thiết lập khóa mã hóa. Khóa này không là gì ngoài thông tin kiểm soát quá trình mã hóa và cho phép chuỗi mã hóa được giải mã
Khóa này phải là bất kỳ chuỗi ngẫu nhiên nào nhưng không phải là văn bản thuần túy đơn giản và phải có độ dài 32 ký tự [128 bit]
Để thiết lập khóa của bạn, hãy truy cập application/config/config. php, mở tệp và đặt
$config['encryption_key'] = "YOUR KEY";
Dưới đây chúng tôi đã tạo một ví dụ để hiển thị, cách mã hóa và giải mã dữ liệu
Để mã hóa mã, chúng tôi đã sử dụng cú pháp dưới đây
$this->encrypt->encode[] // Performs the data encryption and returns it as a string
Để giải mã sử dụng mã
$this->encrypt->decode[] // Decrypts an encoded string.
Nếu muốn, bạn có thể sao chép mã và có thể thử cục bộ hoặc thậm chí có thể tải xuống các tệp
Tải xuống tập lệnh
Hướng dẫn Script chi tiết
Dưới đây là chi tiết về mã được sử dụng trong hướng dẫn này với lời giải thích phù hợp
Bộ điều khiển. mã hóa_tutorial. php
sao chép mã dưới đây trong bộ điều khiển của bạn
Lượt xem. show_form. php
Sao chép mã dưới đây trong chế độ xem của bạn
________số 8_______
CSS. Phong cách. css
Tạo kiểu các phần tử HTML
#main{
width:960px;
margin:50px auto;
font-family:raleway;
}
h2{
background-color: #FEFFED;
text-align:center;
border-radius: 10px 10px 0 0;
margin: -10px -40px;
padding: 30px;
}
hr{
border:0;
border-bottom:1px solid #ccc;
margin: 10px -40px;
margin-bottom: 30px;
}
#show_form{
width:300px;
float: left;
border-radius: 10px;
font-family:raleway;
border: 2px solid #ccc;
padding: 10px 40px 25px;
margin-top: 10px;
}
.result_encode{
position: absolute;
width: auto;
border-radius: 10px;
font-family: raleway;
border: 2px solid #ccc;
top: 400px;
padding: 30px;
word-wrap:break-word;
}
.result_decode{
position: absolute;
width: 500px;
border-radius: 10px;
font-family: raleway;
border: 2px solid #ccc;
top: 400px;
left: 302px;
padding: 30px;
word-wrap:break-word;
}
.decode_form{
position: absolute;
width: 300px;
float: right;
border-radius: 10px;
font-family: raleway;
border: 2px solid #ccc;
top: 540px;
left: 325px;
padding: 50px 40px 25px;
}
input[type=text]{
width:100%;
padding: 10px;
margin-top: 8px;
border: 1px solid #ccc;
padding-left: 5px;
font-size: 16px;
font-family:raleway;
background-color: #FEFFED;
}
input[type=submit]{
width: 100%;
background-color:#FFBC00;
color: white;
border: 2px solid #FFCB00;
padding: 10px;
font-size:20px;
cursor:pointer;
border-radius: 5px;
margin-bottom: 15px;
}
.error_msg{
color:red;
font-size: 16px;
}
Phần kết luận
Đây là tất cả về cách hoạt động của Mã hóa Trong CodeIgniter. Hy vọng bạn thích nó, tiếp tục đọc các blog khác của chúng tôi