Skip to Main Content
Lỗi

State bank of vietnam portal

the state bank of viet nam

|
  • News
  • Monetary Policy
    • Orientations for monetary policy management and banking operations
    • Monetary policy decision making authority and monetary policy tools
  • Payment & Treasury
    • SBV responsibilities for payment operations
    • Payment Systems
      • Inter-bank Electronic Payment System
      • Other payment systems
    • Payment System Oversight
    • Bank Identifification Numbers
    • SBV’s Payment Services Fee Schedule
    • Treasury Operations
  • Money Issuance
    • Vietnamese Currency
    • Typical Features
    • Protection of Vietnamese Currency
  • Statistics
    • Balance of International Payment
    • Total Liquidity
      • Total Liquidity & Deposits with Credit Institutions
      • Cash in Total liquidity
    • Settlements
      • National Payment System Transactions
      • Domestic Transactions by Means of Payment
      • Trasactions via ATM.POS/EFTPOS/EDC
      • Number of Bank Cards
      • Deposits in Indivisudual Payment Accounts
      • List of Non-Bank Payment Service Suppliers
    • Credit to the Economy
    • Performance of Credit Institutions
      • Key Statistical RatiosKey Statistical Ratios
      • Ratio of loan outstanding over total deposits
      • Ratio of NPLs over Total Loan Outstanding
  • News
  • Press Release
    • Thông tin về hoạt động ngân hàng trong tuần
    • Thông cáo báo chí khác
  • Tỷ giá trung tâm
  • Tỷ giá tham khảo tại giữa đồng Việt Nam và các loại ngoại tệ tại Cục Quản lý ngoại hối
  • Tỷ giá tính chéo của Đồng Việt Nam với một số ngoại tệ để xác định giá tính thuế
  • Lãi suất NHNN quy định
  • Lãi suất thị trường liên ngân hàng
  • Statistics
    • Cán cân thanh toán quốc tế
    • Tổng phương tiện thanh toán
      • Tổng phương tiện thanh toán và Tiền gửi của khách hàng tại TCTD
      • Tiền mặt lưu thông trên tổng phương tiện thanh toán
    • Hoạt động thanh toán
      • Giao dịch của hệ thống thanh toán quốc gia
      • Giao dịch thanh toán nội địa theo các PTTT
      • Giao dịch qua ATM/POS/EFTPOS/EDC
      • Số lượng thẻ ngân hàng
      • Tài khoản tiền gửi thanh toán của cá nhân
      • Các tổ chức CUDVTT không phải là TCTD
    • Dư nợ tín dụng đối với nền kinh tế
    • Hoạt động của hệ thống các TCTD
      • Thống kê một số chi tiêu cơ bản
      • Tỷ lệ dư nợ cho vay so với tổng tiền gửi
      • Tỷ lệ nợ xấu trong tổng dư nợ tín dụng
    • Điều tra thống kê
      • Hướng dẫn
      • Phiếu điều tra
      • Điều tra trực tuyến
      • Kết quả điều tra
    • Các văn bản liên quan đến quy định báo cáo thống kê
  • CPI
  • Legal Documents
  • Monetary Policy
    • Orientations for monetary policy management and banking operations
    • Monetary policy decision making authority and monetary policy tools
  • Payment & Treasury
    • SBV responsibilities for payment operations
    • Payment Systems
      • Inter-bank Electronic Payment System
      • Other payment systems
    • Payment System Oversight
      • Thanh toán không dùng tiền mặt
    • Bank Identifification Numbers
    • SBV’s Payment Services Fee Schedule
    • Treasury Operations
    • Danh mục các giao dịch bắt buộc phải thanh toán qua ngân hàng
  • Money Issuance
    • Vietnamese Currency
    • Typical Features
    • Protection of Vietnamese Currency
  • Quản lý hoạt động ngoại hối và hoạt động kinh doanh vàng
  • Cải cách hành chính
    • Tin tức CCHC
    • Bản tin CCHC nội bộ
    • Văn bản cải cách hành chính
    • Phiếu lấy ý kiến giải quyết TTHC
    • Bộ câu hỏi về thủ tục hành chính NHNN
    • Danh mục điều kiện kinh doanh
    • Danh mục báo cáo định kỳ
    • HTQLCL theo tiêu chuẩn ISO
    • Đào tạo ISO
  • Diễn đàn NHNN
    • Hỏi đáp
    • Lấy ý kiến dự thảo VBQPPL
  • About SBV
    • History
    • Major Responsibilities
    • Management Board
    • Former Governors
Trang chủ
  • News
  • Press Release
    • Thông tin về hoạt động ngân hàng trong tuần
    • Thông cáo báo chí khác
  • Tỷ giá trung tâm
  • Tỷ giá tham khảo tại giữa đồng Việt Nam và các loại ngoại tệ tại Cục Quản lý ngoại hối
  • Tỷ giá tính chéo của Đồng Việt Nam với một số ngoại tệ để xác định giá tính thuế
  • Lãi suất NHNN quy định
  • Lãi suất thị trường liên ngân hàng
  • Statistics
    • Cán cân thanh toán quốc tế
    • Tổng phương tiện thanh toán
      • Tổng phương tiện thanh toán và Tiền gửi của khách hàng tại TCTD
      • Tiền mặt lưu thông trên tổng phương tiện thanh toán
    • Hoạt động thanh toán
      • Giao dịch của hệ thống thanh toán quốc gia
      • Giao dịch thanh toán nội địa theo các PTTT
      • Giao dịch qua ATM/POS/EFTPOS/EDC
      • Số lượng thẻ ngân hàng
      • Tài khoản tiền gửi thanh toán của cá nhân
      • Các tổ chức CUDVTT không phải là TCTD
    • Dư nợ tín dụng đối với nền kinh tế
    • Hoạt động của hệ thống các TCTD
      • Thống kê một số chi tiêu cơ bản
      • Tỷ lệ dư nợ cho vay so với tổng tiền gửi
      • Tỷ lệ nợ xấu trong tổng dư nợ tín dụng
    • Điều tra thống kê
      • Hướng dẫn
      • Phiếu điều tra
      • Điều tra trực tuyến
      • Kết quả điều tra
    • Các văn bản liên quan đến quy định báo cáo thống kê
  • CPI
  • Legal Documents
  • Monetary Policy
    • Orientations for monetary policy management and banking operations
    • Monetary policy decision making authority and monetary policy tools
  • Payment & Treasury
    • SBV responsibilities for payment operations
    • Payment Systems
      • Inter-bank Electronic Payment System
      • Other payment systems
    • Payment System Oversight
      • Thanh toán không dùng tiền mặt
    • Bank Identifification Numbers
    • SBV’s Payment Services Fee Schedule
    • Treasury Operations
    • Danh mục các giao dịch bắt buộc phải thanh toán qua ngân hàng
  • Money Issuance
    • Vietnamese Currency
    • Typical Features
    • Protection of Vietnamese Currency
  • Quản lý hoạt động ngoại hối và hoạt động kinh doanh vàng
  • Cải cách hành chính
    • Tin tức CCHC
    • Bản tin CCHC nội bộ
    • Văn bản cải cách hành chính
    • Phiếu lấy ý kiến giải quyết TTHC
    • Bộ câu hỏi về thủ tục hành chính NHNN
    • Danh mục điều kiện kinh doanh
    • Danh mục báo cáo định kỳ
    • HTQLCL theo tiêu chuẩn ISO
    • Đào tạo ISO
  • Diễn đàn NHNN
    • Hỏi đáp
    • Lấy ý kiến dự thảo VBQPPL
  • About SBV
    • History
    • Major Responsibilities
    • Management Board
    • Former Governors
  • Chiến lược phát triển và ứng dụng CNTT trong hoạt động ngân hàng

Bảo vệ thông tin mật trong ứng dụng với Secure String

29/05/2015 22:32:00
0:00
/
0:00
Giọng Nam
  • Giọng Nam
  • Giọng Nữ

Các ứng dụng trong ngân hàng thường phải xử lý các thông tin nhạy cảm như số chứng minh thư, số thẻ tín dụng hay mật khẩu. Những thông tin đó thường được lưu trong các chuỗi (string). Nếu người khác (ứng dụng khác) có thể đọc được bộ nhớ thì những thông tin nhạy cảm đó sẽ bị lộ. Hơn thế nữa, lớp String trong .NET không thể bị sửa đổi. Điều đó có nghĩa là mỗi khi thay đổi giá trị của một chuỗi, chúng ta đã tạo ra những bản sao của nó. Với đoạn mã sau:

Các ứng dụng trong ngân hàng thường phải xử lý các thông tin nhạy cảm như số chứng minh thư, số thẻ tín dụng hay mật khẩu. Những thông tin đó thường được lưu trong các chuỗi (string). Nếu người khác (ứng dụng khác) có thể đọc được bộ nhớ thì những thông tin nhạy cảm đó sẽ bị lộ. Hơn thế nữa, lớp String trong .NET không thể bị sửa đổi. Điều đó có nghĩa là mỗi khi thay đổi giá trị của một chuỗi, chúng ta đã tạo ra những bản sao của nó. Với đoạn mã sau:

string password = “”;

while (condition)

{

char someChar = ...; //get from Console.ReadKey() for example

password += someChar;

}

chương trình sẽ tạo ra rất nhiều chuỗi khác nhau khi người dùng nhập: “H”, “He”, “Hel”, “Hell”, “Hello”, ... Lập trình viên không thể chủ động dọn đống rác đó nên không thể kiểm soát được thông tin.

Để khắc phục vấn đề đó, .NET 2.0 giới thiệu lớp System.Security.SecureString với các tính năng sau:

- Giá trị của chuỗi được mã hóa bằng DPAPI;

- Sử dụng giao diện IDisposable để cho phép lập trình viên quyết định việc dọn rác (bằng cách gọi phương thức Dispose);

- Không thể dễ dàng chuyển sang String để tránh làm lộ thông tin.

Giá trị của một đối tượng SecureString được tự động mã hóa khi một instance của nó được khởi tạo hoặc khi giá trị bị thay đổi. Có thể gọi phương thức MakeReadOnly để ngăn chặn các sửa đổi trên giá trị của một đối tượng SecureString nếu cần.

Từ phiên bản 3.0 SP2, .NET giới thiệu thêm control PasswordBox với thuộc tính SecurePassword để giúp lập trình viên nhận mật khẩu ngay ở dạng SecureString. Nếu sử dụng các phiên bản cũ hơn, lập trình viên cũng có thể sử dụng các hộp thoại nhập mật khẩu dạng SecureString được phát triển và cung cấp miễn phí trên Internet.

Dưới đây là một đoạn mã ví dụ về cách sử dụng SecureString trong ứng dụng console:

/// <summary>

/// Read a password from the console into a SecureString

/// </summary>

/// <returns>Password stored in a secure string</returns>

public static SecureString GetPassword()

{

SecureString password = new SecureString();

// get the first character of the password

ConsoleKeyInfo nextKey = Console.ReadKey(true);

while(nextKey.Key != ConsoleKey.Enter)

{

if(nextKey.Key == ConsoleKey.BackSpace)

{

if(password.Length > 0)

{

password.RemoveAt(password.Length - 1);

// erase the last * as well

Console.Write(nextKey.KeyChar);

Console.Write(“ “);

Console.Write(nextKey.KeyChar);

}

}

else

{

password.AppendChar(nextKey.KeyChar);

Console.Write(“*”);

}

nextKey = Console.ReadKey(true);

}

Console.WriteLine();

// lock the password down

password.MakeReadOnly();

return password

}

Sau khi đọc mật khẩu, ứng dụng có thể dùng nó để khởi tạo một tiến trình mới với một tài khoản khác:

Console.Write(“Username: “);

string user = Console.ReadLine();

string[ ] userParts = user.Split(‘\\’);

Console.Write(“Password: “);

SecureString password = GetPassword();

try

{

ProcessStartInfo psi = new ProcessStartInfo(args[0]);

psi.UseShellExecute = false;

if(userParts.Length == 2)

{

psi.Domain = userParts[0];

psi.UserName = userParts[1];

}

else

{

psi.UserName = userParts[0];

}

psi.Password = password;

Process.Start(psi);

}

catch(Win32Exception e)

{

Console.WriteLine(“Error starting application”);

Console.WriteLine(e.Message);

}

Do có rất ít hàm chấp nhận kiểu SecureString (chỉ có 3 lớp: Process, CspParameters và X509Certificate hiểu SecureString) nên việc dùng nó khá phức tạp: lập trình viên cần dùng phương thức SecureStringToBSTR của lớp Marshal chuyển SecureString thành BSTR rồi sau khi sử dụng thì gọi phương thức ZeroFreeBSTR để xóa sạch con trỏ và dữ liệu mà nó trỏ tới.

SecureString ss = new SecureString();

/* ... */

IntPtr bstr = Marshal.SecureStringToBSTR( ss );

try

{

// use the bstr

}

finally

{

if (bstr != IntPtr.Zero)

Marshal.ZeroFreeBSTR( bstr );

}

Nếu cẩn thận hơn, chúng ta có thể dùng GCHandle để ngăn bộ dọn rác (garbage collector) chép chuỗi giải mã sang chỗ khác và vận dụng cơ chế Constrained Execution Regions để đảm bảo xóa dữ liệu luôn được thực hiện. Tuy nhiên, điều đó nằm ngoài phạm vi bài viết này, đề nghị bạn đọc nào quan tâm tự tìm hiểu thêm.

Sau khi .NET giới thiệu SecureString, rất nhiều lập trình viên Java tìm cách phát triển một thứ tương tự. Tuy nhiên, do Java không gắn chặt với hệ điều hành như .NET nên không thể có một lớp tương tự (bảo mật bằng mật khẩu của người dùng đăng nhập vào hệ điều hành) hay tương thích với SecureString.

Đến 2008 - 2009, Java cũng cho ra đời lớp GuardedString với tính năng mã hóa và cho phép lập trình viên chủ động xóa dữ liệu. Bạn đọc nào quan tâm có thể tham khảo tại địa chỉ: http://docs.oracle.com/cd/E23943_01/apirefs.1111/e24834/org/identityconnectors/common/security/GuardedString.html

Mã nguồn của lớp GuardedString (miễn phí theo Common Development and Distribution License) có thể xem tại địa chỉ sau: http://codenav.org/code.html?project=/org/connid/bundles/org.connid.bundles.openam/0.2&path=/Source%20Packages/org.identityconnectors.common.security/GuardedString.java.

 

(Cnth theo Tạp chí thnh)


  • aA
  • Categories:
  • Chiến lược phát triển và ứng dụng CNTT trong hoạt động ngân hàng
OTHER NEWS
Công bố danh mục các bài toán lớn về khoa học, công nghệ, đổi mới sáng tạo và chuyển đổi số
06/01/2027
Chính phủ ban hành Chương trình hành động mới về phát triển khoa học, công nghệ, đổi mới sáng tạo và chuyển đổi số
04/09/2025
Tham gia khảo sát về trải nghiệm người dùng DVCTT trên VNForm
11/01/2024
Quyết định số 2132QĐ-NHNN Quy định về Danh mục các CSDL của NHNN Việt Nam
10/07/2023
Tổng kết thực hiện PoC về Open API giữa Ngân hàng Nhà nước Việt Nam và Công ty NTT Data Nhật Bản
04/09/2021
Hướng dẫn sử dụng Microsoft Sway trên nền Web
11/02/2017
Hướng dẫn sử dụng Microsoft Sway trên nền Web
11/02/2017
Tiền Apo- Phương tiện thanh toán không hợp pháp tại Việt Nam
11/02/2017
Tiền Apo- Phương tiện thanh toán không hợp pháp tại Việt Nam
11/02/2017
Mức phí các dịch vụ thanh toán
07/05/2016
Showing 1 to 10 of 193
  • 1
  • 2
  • 3
  • 20
About SBV
  • History
  • Major Responsibilities
  • Management Board
  • Former Governors
CPI
Reserve requirement
Interest Rate
Money Market Operations
  • Notification of New Offering off the State Bank Bills
  • Invitation for Gold Auctions
  • Nghiệp vụ thị trường mở
  • Đấu thầu Tín phiếu kho bạc nhà nước
System of Credit Institutions
  • Banks
    • Commercial Banks
      • State-owned Commercial Banks
      • Joibt-stock Commercial Banks
      • Wholly Foreign Owned Banks
      • Joint-venture Banks
    • Policy Banks
    • Cooperative Banks
  • Non-Banks Credit Institution
    • Finance Companies
    • Leasing Companies
    • Other non-bank credit Institutions
  • Micro finance Institutions
  • People's Credit Fund
  • Foreign Bank Branches
  • Representative Offices
Search Bar
TIN VIDEO
Ngân hàng Nhà nước Khu vực 5: Lan toả kỹ năng số trong mỗi cán bộ ngân hàng
Ngân hàng Nhà nước Khu vực 5: Lan toả kỹ năng số trong mỗi cán bộ ngân hàng
TIN ẢNH
Album
Album
TIN ẢNH
Album
Album
Calendar Icon LỊCH LÀM VIỆC CỦA BAN LÃNH ĐẠO Microphone Icon CÁC BÀI PHÁT BIỂU Chart Icon CPI Percentage Icon LÃI SUẤT Money Icon DỰ TRỮ BẮT BUỘC Graduation Icon GIÁO DỤC TÀI CHÍNH Newspaper Icon THÔNG CÁO BÁO CHÍ ẤN PHẨM PHÁT HÀNH
Ngân hàng
ĐẠI HỘI ĐẢNG CÁC CẤP NHIỆM KỲ 2025-2030 Chuyển đổi số
Danh Bạ Liên Hệ Phản Ánh Kiến Nghị Đường Dây Nóng
© state bank of vietnam portal
Address: 49 Ly Thai To - Hoan Kiem - Hanoi
Webmaster: (84 - 243) 266.9435
Email: thuongtrucweb@sbv.gov.vn rss
NCSC Certification
State Bank hotline: (84 - 243) 936.6306
Information security: phone number: (+84)84.859.5983, email: antt@sbv.gov.vn
IPv6 Ready