Nội dung kỹ thuật là trọng tâm của RuggedLayer. Tài nguyên công khai trình bày các mẫu giao tiếp thiết bị có thể tái tạo và bằng chứng cần thiết để đưa ứng dụng hiện có đến gần triển khai; SDK bị hạn chế vẫn được cung cấp qua kênh phân phối đã phê duyệt.
Bằng chứng thiết bị có thể so sánh, kèm phương pháp, phiên bản và giới hạn.
- Chủ sở hữu bảo mật đã được phê duyệt và thiết bị kiểm tra hoặc bộ thẻ được xác định.
- Ranh giới rõ ràng về khóa, mã PIN, dữ liệu APDU, chứng chỉ và tích hợp máy chủ thanh toán.
- Một môi trường thử nghiệm riêng tư với nhật ký được sắp xếp lại và không có thông tin xác thực của khách hàng.
Tiêu chuẩn xuất bản
Xây dựng và xác thực tích hợp Android doanh nghiệp bằng bằng chứng theo phiên bản.
Nội dung kỹ thuật là trọng tâm của RuggedLayer. Tài nguyên công khai trình bày các mẫu giao tiếp thiết bị có thể tái tạo và bằng chứng cần thiết để đưa ứng dụng hiện có đến gần triển khai; SDK bị hạn chế vẫn được cung cấp qua kênh phân phối đã phê duyệt.
- 01
Đặt tên thẻ và ranh giới bảo mật
ICC, PSAM, PICC, dải từ, bảng PIN và phần tử bảo mật là các quy trình công việc khác nhau. Ghi lại loại thẻ, khe cắm, giao thức, chủ sở hữu và thiết bị đích thay vì gọi mọi thứ là “hỗ trợ thẻ”.
- 02
Giữ bí mật bên ngoài bản demo
Sử dụng các thẻ kiểm tra không rõ ràng và các kết quả được xử lý lại trong mẫu công khai. Khóa, khối PIN, dữ liệu theo dõi, giá trị KSN, chứng chỉ và nội dung cố định của khách hàng vẫn ở trạng thái tích hợp riêng tư đã được phê duyệt.
- 03
Làm cho kích hoạt và phát hành đối xứng
Kích hoạt một phiên, xác thực độ dài và trạng thái phản hồi, sau đó hủy kích hoạt theo đường dẫn cuối cùng. Giao dịch thất bại không được để thẻ hoặc mô-đun bảo mật mở.
- 04
Yêu cầu xem xét bảo mật trước khi yêu cầu phần cứng
Các mẫu SDK cục bộ rất hữu ích cho việc khám phá mô-đun nhưng chúng không thiết lập sự tuân thủ, phê duyệt thanh toán hoặc khả năng tương thích sản xuất. Những tuyên bố đó cần một hồ sơ bằng chứng riêng biệt.
Ứng dụng mẫu / Kotlin
Mẫu SDK và API
Điều này cố tình sử dụng một tay cầm kiểm tra mờ đục. Đây không phải là cách triển khai thanh toán và không chứa khóa hoặc thông tin xác thực.
data class SecureRequest(
val operation: String,
val testHandle: String,
)
sealed interface SecureResult {
data object Accepted : SecureResult
data class Declined(val reason: String) : SecureResult
data class Failed(val reason: String) : SecureResult
}
interface SecurePort {
suspend fun execute(request: SecureRequest): SecureResult
}
suspend fun executeApprovedOperation(port: SecurePort): SecureResult =
runCatching {
port.execute(SecureRequest("approved-test", "fixture-01"))
}.getOrElse {
SecureResult.Failed("secure-operation-failed")
}Phân phối SDK
Điều kiện xuất bản
Không công bố tệp nhị phân, tài liệu API, firmware hoặc mã mẫu của nhà cung cấp trước khi quyền phân phối lại và phạm vi hỗ trợ được ghi nhận.
Loại bỏ phản hồi khỏi quy trình làm việc công khai, ghi lại lỗi đã được xử lý lại và giải phóng phiên.
Dừng thử nghiệm, thay đổi thông tin xác thực bị ảnh hưởng và xóa thành phần lạ khỏi môi trường thử nghiệm.
Tách bản ghi tương thích và yêu cầu đánh giá bảo mật dành riêng cho thiết bị.
Cách đánh giá bằng chứng
Bằng chứng thiết bị có thể so sánh, kèm phương pháp, phiên bản và giới hạn.
- 01
Chỉ sử dụng thông tin xác thực và thiết bị kiểm tra đã được phê duyệt trong môi trường riêng tư.
- 02
Xác minh đường dẫn kích hoạt, thành công, hết thời gian, thất bại và phát hành.
- 03
Chạy quét nhật ký được sắp xếp lại trước khi chia sẻ bất kỳ báo cáo hoặc mẫu nào.
- 04
Ghi lại chủ sở hữu bảo mật, thiết bị, chương trình cơ sở, SDK và phạm vi phê duyệt.
Tài nguyên
Mẫu SDK và API
Không công bố tệp nhị phân, tài liệu API, firmware hoặc mã mẫu của nhà cung cấp trước khi quyền phân phối lại và phạm vi hỗ trợ được ghi nhận.