Ключ программного интерфейса приложения (API) — это уникальный код, используемый API для идентификации приложения или пользователя. API-ключи используются для отслеживания и контроля того, кто и как использует API, а также для аутентификации и авторизации приложений аналогично паролям и логинам. API-ключ может представлять собой один ключ или набор из нескольких ключей. Пользователям стоит уделять внимание их безопасности, чтобы защититься от кражи и утечки данных.
API và khóa API
Để hiểu khóa API là gì, trước tiên bạn phải xem chính API. Giao diện lập trình ứng dụng hay API là phần mềm trung gian cho phép trao đổi thông tin giữa hai hoặc nhiều ứng dụng. Ví dụ: API CoinMarketCap cho phép các ứng dụng khác truy xuất và sử dụng dữ liệu tiền điện tử như giá, khối lượng và vốn hóa thị trường.
Khóa API có thể là một khóa duy nhất hoặc một bộ nhiều khóa. Nhiều hệ thống khác nhau sử dụng các khóa này để xác thực và ủy quyền cho các ứng dụng, giống như thông tin đăng nhập và mật khẩu. Khóa API được ứng dụng khách API sử dụng để xác thực ứng dụng gọi API.
Ví dụ: nếu Binance Academy muốn sử dụng API CoinMarketCap thì CoinMarketCap sẽ tạo khóa API và sử dụng nó để xác thực Binance Academy (ứng dụng khách API) đang yêu cầu quyền truy cập vào API. Khi Binance Academy truy cập API CoinMarketCap, khóa API sẽ được gửi tới CoinMarketCap cùng với yêu cầu.
Trong ví dụ này, chỉ Binance Academy mới có thể sử dụng khóa API mà không chia sẻ nó với bên thứ ba. Việc chia sẻ khóa API này sẽ cho phép bên thứ ba truy cập CoinMarketCap và thực hiện các hành động thay mặt cho Binance Academy.
Ngoài ra, API CoinMarketCap có thể sử dụng khóa API để xác minh rằng ứng dụng được phép truy cập vào tài nguyên được yêu cầu. Chủ sở hữu API cũng có thể sử dụng khóa API để theo dõi hoạt động API, bao gồm các loại yêu cầu, lưu lượng truy cập và khối lượng.
Khóa API là gì
Khóa API được sử dụng để kiểm soát và theo dõi ai đang sử dụng API và cách thức sử dụng. Bản thân thuật ngữ “khóa API” có thể có nhiều nghĩa. Một số hệ thống chỉ có một mã, trong khi những hệ thống khác có nhiều mã cho một khóa API.
Nói cách khác, khóa API là một mã duy nhất hoặc bộ mã duy nhất được API sử dụng để xác thực và ủy quyền cho người dùng hoặc ứng dụng gọi điện. Một số mã được sử dụng để xác thực, trong khi các mã khác được sử dụng để tạo chữ ký mật mã xác nhận tính hợp pháp của yêu cầu.
Các mã xác thực này được gọi là "khóa API", trong khi mã tạo chữ ký mật mã có nhiều tên khác nhau như "khóa bí mật", "khóa chung" hoặc "khóa riêng". Xác thực bao gồm việc xác định các thực thể có liên quan và xác nhận danh tính.
Ngược lại, việc ủy quyền sẽ xác định các dịch vụ API được phép truy cập. Khóa API hoạt động tương tự như thông tin đăng nhập và mật khẩu tài khoản, đồng thời cũng có thể được liên kết với các tính năng bảo mật khác để tăng cường bảo mật tổng thể.
Chủ sở hữu API tạo từng khóa API cụ thể cho một thực thể cụ thể (xem thêm điều này bên dưới) và mỗi khi điểm cuối API được gọi yêu cầu xác thực và/hoặc ủy quyền của người dùng, khóa tương ứng sẽ được sử dụng.
Chữ ký mật mã
Một số khóa API sử dụng chữ ký mật mã làm lớp xác minh bổ sung. Khi người dùng muốn chuyển một số dữ liệu nhất định tới API, chữ ký số được tạo bởi một khóa khác có thể được thêm vào yêu cầu. Bằng cách sử dụng mật mã, chủ sở hữu API sẽ có thể xác minh rằng chữ ký số khớp với dữ liệu đã gửi.
Chữ ký đối xứng và bất đối xứng
Các loại khóa mật mã sau đây được sử dụng để ký dữ liệu được gửi qua API:
Phím đối xứng
Chúng liên quan đến việc sử dụng một khóa bí mật để ký dữ liệu và xác minh chữ ký. Khi sử dụng khóa đối xứng, chủ sở hữu API sẽ tạo khóa API và khóa bí mật, được sử dụng để xác minh chữ ký bằng các dịch vụ API. Ưu điểm chính của việc sử dụng một khóa duy nhất là nó tăng tốc quá trình tạo và xác minh chữ ký và yêu cầu ít sức mạnh tính toán hơn. Một ví dụ về khóa đối xứng tốt là HMAC.
Phím bất đối xứng
Chúng liên quan đến việc sử dụng hai khóa: riêng tư và công khai, khác nhau nhưng có kết nối mật mã. Khóa riêng được sử dụng để tạo chữ ký và khóa chung được sử dụng để xác minh chữ ký. Chủ sở hữu API tạo khóa API và người dùng tạo khóa riêng và khóa chung. Để xác minh chữ ký, chủ sở hữu API chỉ sử dụng khóa chung, còn khóa riêng được giữ bí mật.
Ưu điểm chính của việc sử dụng khóa bất đối xứng là tăng tính bảo mật bằng cách tách biệt nhiệm vụ tạo chữ ký và xác minh chữ ký. Điều này cho phép các hệ thống bên ngoài xác minh chữ ký mà không thể tạo ra chúng. Ngoài ra, một số hệ thống mã hóa bất đối xứng hỗ trợ thêm mật khẩu vào khóa riêng. Một ví dụ là cặp khóa RSA.
Bảo mật khóa API
Việc bảo mật khóa API là trách nhiệm của người dùng. Khóa API hoạt động như mật khẩu và yêu cầu sự cẩn thận tương tự. Bạn không nên chia sẻ khóa API của mình với bên thứ ba vì điều này sẽ tương tự như việc chia sẻ mật khẩu và có thể khiến tài khoản của bạn gặp rủi ro.
Khóa API thường là mục tiêu của các cuộc tấn công mạng vì chúng có thể được sử dụng để thực hiện các hoạt động nhạy cảm của hệ thống, chẳng hạn như yêu cầu thông tin cá nhân hoặc thực hiện các giao dịch tài chính. Đã có trường hợp kẻ tấn công tấn công cơ sở dữ liệu trực tuyến bằng mã và đánh cắp khóa API.
Việc đánh cắp khóa API có thể dẫn đến hậu quả tiêu cực và tổn thất tài chính đáng kể. Hơn nữa, một số khóa API không hết hạn nên kẻ tấn công có thể sử dụng chúng trước khi khóa bị vô hiệu hóa.
Mẹo sử dụng khóa API một cách an toàn
Khóa API cung cấp quyền truy cập vào dữ liệu nhạy cảm, vì vậy điều quan trọng là phải sử dụng chúng một cách an toàn. Hãy làm theo những nguyên tắc sau để sử dụng khóa API một cách an toàn:
Cố gắng thay đổi khóa API định kỳ. Để thay đổi khóa, bạn phải xóa khóa API hiện tại và tạo khóa mới. Khi sử dụng nhiều hệ thống, việc xóa và tạo khóa API không khó. Giống như một số hệ thống yêu cầu thay đổi mật khẩu 30 đến 90 ngày một lần, chủ sở hữu khóa nên thay đổi khóa API với tần suất như nhau nếu có thể.
Tạo danh sách trắng các địa chỉ IP. Khi tạo khóa API mới, hãy tạo danh sách các địa chỉ IP sẽ được phép sử dụng khóa này (danh sách trắng IP). Ngoài ra, bạn cũng có thể chỉ định danh sách các địa chỉ IP bị chặn (IP blacklist). Sau đó, nếu khóa bị đánh cắp, địa chỉ IP không được nhận dạng sẽ không thể sử dụng được.
Sử dụng nhiều khóa API. Việc có nhiều khóa và phân phối nhiệm vụ giữa chúng sẽ giảm thiểu rủi ro vì bảo mật tài khoản sẽ không phụ thuộc vào một khóa được sử dụng cho tất cả các nhiệm vụ cùng một lúc. Ngoài ra, với mỗi khóa, bạn có thể tạo danh sách trắng các địa chỉ IP khác nhau, từ đó tăng cường đáng kể mức độ bảo mật.
Đảm bảo rằng các khóa API được lưu trữ an toàn. Không lưu trữ khóa ở những nơi công cộng, trên máy tính công cộng hoặc ở định dạng văn bản thuần túy. Để tăng tính bảo mật cho từng khóa, hãy sử dụng mã hóa hoặc dịch vụ quản lý dữ liệu bí mật và cẩn thận để không vô tình tiết lộ nó.
Ни с кем не делитесь своими API-ключами. Предоставить кому-либо API-ключ — все равно что предоставить пароль. В этом случае третья сторона получает те же возможности аутентификации и авторизации, что и вы. В случае утечки данных API-ключ может быть украден и использован для взлома аккаунта. API-ключ должен применяться только вами и системой, которая его генерирует.
Nếu khóa API của bạn rơi vào tay bên thứ ba, hãy nhớ tắt nó để tránh thiệt hại thêm. Trong trường hợp tổn thất tài chính, hãy chụp ảnh màn hình các thông tin chính về vụ việc và liên hệ với các tổ chức liên quan cũng như nộp báo cáo cho cảnh sát. Bằng cách này, bạn có thể tăng cơ hội lấy lại số tiền bị mất.
Tóm lại là
Khóa API cung cấp chức năng xác thực và ủy quyền, vì vậy người dùng nên lưu trữ chúng một cách an toàn và thận trọng khi sử dụng. Có nhiều cấp độ và cách để bảo mật khóa API. Khóa API phải được xử lý giống như mật khẩu tài khoản của bạn.
Đề nghị đọc
Nguyên tắc an toàn chung
5 loại lừa đảo tiền điện tử phổ biến và cách tránh chúng



