Độ trễ bắt tay và hao tổn pin giữa TLS 1.2 và 1.3 trên 11 SKU bút đọc. So sánh RSA và ECDSA, quy trình cấp phát chứng chỉ và kiểm thử tại nhà máy.

Đăng lúc: Th05 12, 2025 - 59 Lượt xem

So sánh TLS 1.2 và 1.3 trên bút đọc và quản lý chứng chỉ: độ trễ bắt tay, pin và chi phí cấp phát

Reading pen electronics factory assembly

Bút đọc TLS 1.2 so với 1.3 và Quản lý Chứng chỉ: Độ trễ Bắt tay, Pin và Chi phí Cấp phát

Đối tượng: Bài viết này hướng đến các kỹ sư firmware OEM, kiến trúc sư bảo mật MDM và cán bộ tuân thủ phải biện minh cho phiên bản TLS, bộ mật mã và chuỗi chứng chỉ trên một đội xe bút đọc trẻ em. Bài viết đo điểm chuẩn TLS 1.2 (RFC 5246), TLS 1.3 (RFC 8446) và DTLS 1.3 trên toàn bộ 11 SKU đang hoạt động (B1, B2, F8, K7, KF1, L5, P2, Q6, Q8, T2, Y6), với độ trễ bắt tay đo được, chi phí pin và tác động BOM của việc lưu trữ chứng chỉ.

Một dự án thí điểm EU năm 2025 đã đặt 5.000 bút đọc sau tường lửa Palo Alto PA-5220 của trường học. Đội MDM chỉ định bắt buộc TLS 1.3 và chứng chỉ máy chủ ECDSA-256. Firmware thế hệ đầu tiên 3.1.2 của chúng tôi trên F8 hỗ trợ TLS 1.3 phía máy chủ nhưng không có chứng chỉ client ECDSA, chỉ có RSA-2048. Kết quả: mỗi bút đều thất bại ở lần bắt tay đầu tiên và thử lại với phương án dự phòng TLS 1.2 bị lỗi nửa vời. Bắt tay mất 4,6 giây và đốt 18 mAh mỗi bút mỗi ngày. Sau khi chúng tôi phát hành firmware 3.3.1 với hỗ trợ client ECDSA-P256 trên Q8 và T2, thời gian bắt tay giảm xuống 0,95 giây và chi phí pin giảm xuống 3,1 mAh mỗi ngày.

Bài viết này là tài liệu kỹ thuật mà chúng tôi ước mình đã có vào Ngày 1 của triển khai đó. Nó được xây dựng trên các phép đo sản xuất trên 11 SKU và kiểm thử chấp nhận tại nhà máy nội bộ của chúng tôi.

1. Tại sao TLS lại quan trọng trên bút đọc

Bút đọc là một "sản phẩm trẻ em kết nối." Theo GDPR Điều 32, COPPA §312 và PIPL Art. 51, bút đang xử lý dữ liệu cá nhân của người chưa thành niên. Nghĩa vụ mã hóa đường truyền là không thể thương lượng. Chúng tôi luôn kết thúc TLS tại cloud broker (MQTT 8883, HTTPS 443) và tại máy chủ tải OTA. Firmware từ chối phát hành bản build với tls=false.

Hai phiên bản giao thức đang trong sản xuất:

  • TLS 1.2 — được hỗ trợ trên mọi SKU có chip Wi-Fi (tất cả 11). Đường cơ sở bắt buộc. Bộ mật mã: ECDHE-ECDSA-AES128-GCM-SHA256, ECDHE-RSA-AES128-GCM-SHA256.
  • TLS 1.3 — được hỗ trợ trên K7, KF1, L5, Q8, T2, Y6. Bộ mật mã: TLS_AES_128_GCM_SHA256, TLS_CHACHA20_POLY1305_SHA256. Dữ liệu 0-RTT khi tiếp tục.
  • DTLS 1.3 — được hỗ trợ trên Q8, T2. Sử dụng cho CoAP-over-DTLS.

2. Ma trận hỗ trợ TLS cho 11 SKU

Model TLS 1.2 Client TLS 1.3 Client DTLS 1.2 Client DTLS 1.3 Client Hardware RNG Secure Element Default Cert Type
B1 Có Không Không Không Không Không RSA-2048
B2 Có Không Không Không Không Không RSA-2048
F8 Có Có (firmware 3.1.2+) Không Không Có (BK7251 TRNG) Không RSA-2048
K7 Có Có Không Không Có Không RSA-2048
KF1 Có Có Không No Yes No RSA-2048
L5 Yes Yes No No Yes No RSA-2048
P2 Yes No No No No No RSA-2048
Q6 Yes Yes No No Yes No RSA-2048
Q8 Yes Yes Yes Yes Yes Optional ATECC608B RSA-2048 hoặc ECDSA-P256
T2 Yes Yes Yes Yes Yes Optional ATECC608B RSA-2048 hoặc ECDSA-P256
Y6 Yes Yes No No Yes No RSA-2048

Vài điểm không hiển nhiên trong bảng trên. Thứ nhất, DTLS (Datagram TLS) chỉ cần thiết cho CoAP; phần lớn bút sử dụng TCP+TLS. Thứ hai, Secure Element (Microchip ATECC608B hoặc NXP SE050) là tùy chọn trên Q8 và T2 — việc bổ sung có chi phí $0.62 mỗi đơn vị và lưu trữ khóa riêng trong phần cứng chống can thiệp. Chúng tôi bắt buộc secure element cho bất kỳ bút nào xuất sang Đức, Pháp hoặc California (CCPA), nơi rủi ro can thiệp không nhỏ. Thứ ba, hardware RNG vấn đề then chốt: TRNG (trình tạo số ngẫu nhiên thực) tránh được điểm yếu thống kê của các seed RNG phần mềm đã ảnh hưởng đến BK7251 rev A vào năm 2022.

Mẹo cho người mua: Nếu đội ngũ tuân thủ của bạn yêu cầu FIPS 140-2 hoặc Common Criteria EAL4+, bạn phải đặt hàng Q8 hoặc T2 kèm secure element ATECC608B. 9 SKU còn lại không thể đáp ứng các chứng nhận đó vì khóa riêng được lưu trong flash thường.

3. Bắt tay TLS 1.2 so với 1.3, đo lường được

Một bắt tay TLS 1.2 ECDHE-RSA-AES128-GCM-SHA256 gồm hai round trip cộng thêm bước xác minh chứng chỉ. TLS 1.3 với ECDHE-ECDSA-P256 là một round trip cộng thêm bước xác minh chứng chỉ đã mã hóa. Trên một liên kết Wi-Fi sạch, số đo thời gian thực tế là:

TLS Handshake Latency by SKU and Protocol (ms)

Các con số trở nên phẳng hơn khi bạn tách theo SKU:

Đường bắt tay Thời gian thực (ms) Số byte trên đường truyền
TLS 1.2 + RSA-2048 1.820 6.840
TLS 1.2 + ECDHE-RSA 1.140 5.120
TLS 1.3 + ECDSA-P256 950 3.860
TLS 1.3 + 0-RTT resume 240 1.180

Bắt tay 1-RTT trên TLS 1.3 tiết kiệm 58% độ trễ so với bắt tay RSA TLS 1.2. Trên một cây bút chạy bằng pin, việc tiết kiệm năng lượng còn quan trọng hơn: sóng vô tuyến phải hoạt động lâu hơn khoảng 1,5× đối với TLS 1.2.

4. RSA so với ECDSA — Câu chuyện BOM

Chứng chỉ được lưu trữ trong image firmware hoặc trong secure element chuyên dụng. Kích thước:

Loại chứng chỉ Kích thước DER RAM khi xác minh Thời gian ECDHE (ms) Thời gian xác minh (ms)
RSA-2048 1.042 B 1,6 KB 36 14
RSA-3072 1.506 B 2,4 KB 58 22
ECDSA-P256 480 B 0,6 KB 12 8
Ed25519 460 B 0,7 KB 14 9

Chứng chỉ ECDSA-P256 có kích thước nhỏ hơn 54% so với RSA-2048 và xác minh nhanh hơn 57% thời gian CPU. Đối với đội xe 10,000 cây bút, phần tiết kiệm flash trên mỗi bút sẽ cộng lại: 10,000 × 562 B = 5,6 MB băng thông OTA tích lũy được tiết kiệm cho mỗi lần xoay vòng chứng chỉ.

Thực tế về BOM là chuỗi ECDSA tốn chi phí quản lý trên nền tảng đám mây nhỉnh hơn một chút. AWS IoT, Azure IoT Hub và hầu hết các hệ thống PKI doanh nghiệp thu phí gần như tương đương cho cả hai loại khóa, vì vậy chúng tôi khuyến nghị ECDSA-P256 cho mọi triển khai mới.

5. Cấp phát chứng chỉ tại ICT

Mỗi bút đọc sách phải có một client certificate duy nhất để xác thực với đám mây. Quy trình kiểm tra trên mạch (ICT) của chúng tôi thực hiện:

  1. Bút gia nhập VLAN cấp phát.
  2. Bút gọi SCEP endpoint của CA nhà máy qua HTTPS kèm CSR (PKCS#10).
  3. CA ký CSR với thời hạn 10 năm.
  4. Chứng chỉ đã ký được ghi vào vùng NVM của bút.
  5. Bút khởi động lại và thử thực hiện bắt tay TLS với MQTT broker.

Thông lượng ký của CA trên Raspberry Pi 4 là 3,4 chứng chỉ/giây. Ở tốc độ dây chuyền ICT 60 giây/sản phẩm, khâu cấp phát chứng chỉ chỉ trở thành điểm nghẽn đối với những lô hàng rất lớn. Chúng tôi sử dụng cụm ký 4 node để đạt 12 chứng chỉ/giây cho các gói thầu trên 20.000 sản phẩm.

Về chi phí sàn sản xuất, vòng đời chứng chỉ là 0,10 USD/sản phẩm (RSA-2048) hoặc 0,06 USD/sản phẩm (ECDSA-P256). Mức chênh 38% là một trong những lý do chúng tôi khuyến nghị ECDSA.

6. Chiến lược xoay vòng chứng chỉ

Ba tần suất xoay vòng đang được triển khai trong các đội xe khách hàng:

  • Xoay vòng hằng năm — phần lớn MDM trường học. Gia hạn qua OTA. Tương thích với cả 11 SKU.
  • Xoay vòng 90 ngày — các học khu đòi hỏi bảo mật cao, công ty con thuộc lĩnh vực tài chính. Yêu cầu Q8, T2 với ATECC608B; private key không thể trích xuất.
  • Xoay vòng theo yêu cầu — ứng phó sự cố compromise. Chúng tôi ép xoay vòng qua OTA trong 18 phút, bao gồm cả tải xuống + cài đặt + khởi động lại.

OCSP stapling và kiểm tra CRL được bật mặc định trên firmware 3.3.1+ của Q8, T2. Bút xác minh chuỗi chứng chỉ máy chủ và kiểm tra OCSP response đã staple. Đối với đội xe 100.000 bút, OCSP responder phải phục vụ 100.000 yêu cầu mỗi ngày — chúng tôi vận hành OCSP responder dựa trên Anycast với 4 PoP để giữ p99 dưới 80 ms.

7. Mặc định cipher suite

Danh sách cipher suite mặc định của nhà máy được ghi chép trong [Compliance Manual]. Thứ tự đầy đủ, trên L5/Q8/T2/Y6:

TLS 1.3:
  TLS_AES_128_GCM_SHA256         (ưu tiên 1)
  TLS_AES_256_GCM_SHA384         (ưu tiên 2)
  TLS_CHACHA20_POLY1305_SHA256   (ưu tiên 3, dự phòng)

TLS 1.2:
  ECDHE-ECDSA-AES128-GCM-SHA256  (ưu tiên 1)
  ECDHE-RSA-AES128-GCM-SHA256    (ưu tiên 2)
  ECDHE-ECDSA-AES256-GCM-SHA384  (ưu tiên 3)
  ECDHE-RSA-AES256-GCM-SHA384    (ưu tiên 4)

Chúng tôi không bao giờ bật các cipher AES-CBC, RC4, MD5, SHA-1, 3DES hay export-grade. Một học khu chạy TLS scanner (testssl.sh, Qualys SSL Labs) đối với broker endpoint của bút sẽ chỉ thấy các cipher suite ở trạng thái xanh.

8. Dữ liệu 0-RTT: Một chi tiết đáng lưu ý

TLS 1.3 giới thiệu dữ liệu 0-RTT — client có thể gửi application byte ngay trong flight đầu tiên, trước Finished message của máy chủ. Trên bút đọc sách, điều này tiết kiệm 240 ms khi resume, nhưng dữ liệu 0-RTT lại dễ bị tấn công replay. Kẻ tấn công chặn được flight đầu tiên có thể replay nó với cùng máy chủ trong thời hạn của session ticket.

Do đó, chúng tôi không dùng 0-RTT cho:

  • Lệnh firmware OTA (replay sẽ gây flash lại).
  • Thay đổi cài đặt kiểm soát của phụ huynh.
  • Gửi điểm có tác động tài chính (gói truyện trả phí).

Chúng tôi có dùng 0-RTT cho:

  • Xuất bản telemetry (idempotent, bị thay thế bởi gói tin kế tiếp).
  • Yêu cầu đồng bộ thời gian dạng NTP (idempotent).
  • Heartbeat (idempotent).

9. Chấm dứt TLS phía đám mây

Khuyến nghị của nhà máy là chấm dứt TLS tại cloud broker (HiveMQ, EMQX, AWS IoT Core) hoặc tại CDN edge (CloudFront, Cloudflare). Với triển khai cho trường học dùng broker on-premise, đội IT phải tự quản lý việc xoay vòng chứng chỉ trên broker. Chúng tôi cung cấp Terraform module cho AWS IoT Core và Helm chart cho EMQX trên Kubernetes, tự động hóa xoay vòng với Let's Encrypt hoặc internal CA.

Với các chương trình dạng HIPAA (chúng tôi có một chương trình ở vùng Trung Tây Hoa Kỳ cho sáng kiến đọc sách nhi khoa của bệnh viện), broker phải chạy OpenSSL ở chế độ FIPS. Q8 và T2 với ATECC608B nắm giữ ranh giới FIPS 140-2; broker nắm giữ ranh giới FIPS 140-3. FIPS 140 trọn tuyến tạo ra chênh lệch BOM 0,85 USD/sản phẩm ở MOQ 5.000.

11. Mutual TLS cho tích hợp MDM trường học

Ngoài xác thực máy chủ, một số nền tảng MDM (Jamf School, Mosyle, Microsoft Intune for Education) yêu cầu bút xác thực bằng client certificate. Chúng tôi hỗ trợ điều này trên Q8 và T2 với secure element ATECC608B; private key của chứng chỉ không bao giờ rời khỏi chip.

Luồng ghi danh MDM:

  1. IT trường đẩy một MDM profile lên tablet của giáo viên.
  2. Giáo viên ghép nối Q8/T2 với tablet qua BLE.
  3. MDM profile gồm URL SCEP (Simple Certificate Enrolment Protocol) endpoint.
  4. Bút kết nối SCEP endpoint qua HTTPS, trình CSR.
  5. SCEP CA ký CSR bằng sub-CA MDM của trường.
  6. Chứng chỉ đã ký được ghi vào ATECC608B.
  7. Hoàn tất ghi danh MDM.

12. Kiểm thử xâm nhập và OWASP IoT Top 10

Firmware của chúng tôi được kiểm thử hằng năm theo OWASP IoT Top 10 (bản sửa đổi 2024). Đợt kiểm tra gần nhất bao gồm F8 3.1.2, K7 1.9.5, KF1 1.9.5, L5 4.2.0, Q6 3.3.1, Q8 3.3.1, T2 3.3.1 và Y6 2.6.4. Kiểm tra phát hiện:

  • I1 Mật khẩu yếu — đạt. Mặc định nhà máy không có mật khẩu do người dùng đặt; MDM gán PSK mạnh khi ghi danh.
  • I2 Dịch vụ mạng không an toàn — đạt. Mọi dịch vụ yêu cầu TLS 1.2 hoặc 1.3; các cổng cleartext (80, 21, 23) bị tắt.
  • I3 Giao diện hệ sinh thái không an toàn — đạt. API MDM yêu cầu mutual TLS với ECDSA-P256.
  • I4 Thiếu cơ chế cập nhật an toàn — đạt. Ký số ảnh ECDSA-P256, bộ đếm chống rollback, xem TC-046.
  • I5 Sử dụng linh kiện không an toàn — đạt. Không có thư viện bên thứ ba nào có CVE đã biết trong cây firmware của chúng tôi.
  • I6 Bảo vệ quyền riêng tư không đầy đủ — đạt. Telemetry là tùy chọn; mặc định xuất xưởng với telemetry đã tắt.
  • I7 Truyền dữ liệu không an toàn — đạt. TLS 1.3 + ECDSA-P256 + nguyên tắc 0-RTT.
  • I8 Thiếu quản lý thiết bị — đạt. Hỗ trợ MDM đầy đủ trên Q8, T2.
  • I9 Cài đặt mặc định không an toàn — đạt. Mặc định tại nhà máy là hạn chế nhất.
  • I10 Thiếu gia cố vật lý — một phần. KF1, L5, Q8, T2, Y6 có chân phát hiện can thiệp; B1, B2, P2 thì không.

Nhà nhập khẩu có thể yêu cầu báo cáo kiểm toán đầy đủ theo NDA. Báo cáo dài 84 trang; thời gian thực hiện là 5 ngày làm việc.

13. Phân phối CRL và Ghim OCSP trong Thực tiễn

Một đội fleet 10.000 chiếc bút cho trường học tạo ra tải PKI không nhỏ. Nếu mỗi chiếc bút phải xác minh chứng chỉ máy chủ bằng cách liên hệ responder OCSP của CA trên mỗi handshake TLS, hạ tầng CA sẽ sụp đổ. Chúng tôi giải quyết điều này bằng ghim OCSP ở phía broker: broker tải phản hồi OCSP từ CA mỗi 4 giờ và ghim vào handshake TLS.

Phản hồi OCSP được ghim có hiệu lực 4 giờ (khớp với nhịp làm mới). Bút xác minh phản hồi được ghim với khóa công khai của CA, kiểm tra chữ ký và tiếp tục. Nếu phản hồi được ghim bị thiếu hoặc hết hạn, bút sẽ chuyển sang OCSP trực tiếp và có thể bị trễ 200–800 ms.

Để phân phối CRL, chúng tôi vận hành một responder Anycast hằng ngày tại 4 PoP (Singapore, Frankfurt, Virginia, São Paulo). CRL có dung lượng 48 KB; bút tải nó qua HTTP range request trên mỗi handshake TLS thành công (được lưu cache trong 24 giờ). Băng thông tích lũy cho mỗi bút mỗi ngày là 2 KB. Tỷ lệ lỗi CRL trên firmware 3.3.1 của Q8/T2 là 0,04% trên hơn 47.000 chiếc bút đã xuất xưởng.

Chế độ Tuân thủ SKU Khuyến nghị Phiên bản TLS Loại Khóa Phần tử Bảo mật
GDPR + COPPA Q8 hoặc T2 TLS 1.3 ECDSA-P256 Tùy chọn
CCPA + trường học California Q8 hoặc T2 TLS 1.3 ECDSA-P256 Khuyến nghị
Chương trình nhi khoa HIPAA Q8 hoặc T2 TLS 1.3 ECDSA-P256 Bắt buộc (ATECC608B)
Chương trình PIPL Trung Quốc Q8 hoặc T2 TLS 1.3 Đóng gói SM2 Bắt buộc (CA tùy chỉnh)
LGPD Brazil L5, Q6, Q8, T2, Y6 TLS 1.2 hoặc 1.3 ECDSA-P256 Tùy chọn
Bán buôn dưới $10 P2 Chỉ TLS 1.2 RSA-2048 Không

Với mọi triển khai mới, khuyến nghị của chúng tôi là TLS 1.3 + ECDSA-P256 kết hợp ATECC608B cho mọi chiếc bút có ASP bán lẻ trên $25. Việc tiết kiệm độ trễ handshake, giảm kích thước chứng chỉ và lưu trữ khóa an toàn là nền tảng kỹ thuật phù hợp cho giai đoạn 2026–2028.

Certificate Type vs Verify Time (ms on Q8 firmware 3.3.1)



Bài đọc liên quan


Yêu cầu báo giá — Nhận phản hồi nhanh từ nhà máy

Frequently Asked Questions

Liệu mọi bút đọc đều hỗ trợ TLS 1.3?
Không. B1, B2 và P2 chỉ hỗ trợ TLS 1.2. F8, K7, KF1, L5, Q6, Q8, T2 và Y6 hỗ trợ TLS 1.3 trên firmware 3.1.2 (F8) trở đi. Đối với triển khai mới, chúng tôi khuyến nghị TLS 1.3 kết hợp chứng chỉ client ECDSA-P256 trên Q8 hoặc T2.
Chênh lệch độ trễ bắt tay giữa TLS 1.2 và 1.3 là bao nhiêu?
Trung vị trên đường truyền Wi-Fi trường học sạch với RTT 35 ms: TLS 1.2 RSA = 1.820 ms, TLS 1.2 ECDHE = 1.140 ms, TLS 1.3 ECDSA = 950 ms, TLS 1.3 0-RTT resume = 240 ms. 0-RTT chỉ an toàn cho lưu lượng idempotent như telemetry, tuyệt đối không dùng cho OTA.
Bút đọc có thể lưu khoá riêng trong phần tử bảo mật không?
Q8 và T2 hỗ trợ tuỳ chọn phần tử bảo mật Microchip ATECC608B. Tác động lên BOM là 0,62 USD mỗi đơn vị. Khoá riêng được sinh ra trên chip và không bao giờ lộ ra MCU. Chúng tôi bắt buộc phần tử bảo mật cho các chương trình HIPAA và khuyến nghị cho mọi bút có giá bán lẻ trên 25 USD.
Việc cấp chứng chỉ tại nhà máy mất bao lâu?
Trên một Raspberry Pi 4 làm CA đơn lẻ, chúng tôi ký 3,4 chứng chỉ mỗi giây. Trên cụm ký 4 nút, đạt 12 chứng chỉ/giây, đủ theo kịp dây chuyền ICT 60 giây ở bất kỳ quy mô sản xuất nào. Ký ECDSA-P256 rẻ hơn 38% so với RSA-2048 (0,06 USD so với 0,10 USD mỗi đơn vị).
Chúng tôi có nên dùng dữ liệu 0-RTT trên bút không?
0-RTT chỉ an toàn cho lưu lượng idempotent, nơi việc phát lại không gây hại. Chúng tôi bật nó cho các lượt gửi telemetry, yêu cầu đồng bộ thời gian và heartbeat MQTT. Chúng tôi tắt nó cho các lệnh firmware OTA, thay đổi kiểm soát của phụ huynh và mọi hành động tài chính (tải gói truyện trả phí).
Giỏ hàng của bạn
Trải nghiệm của bạn trên trang web này sẽ được cải thiện khi cho phép sử dụng cookies. Chính sách Cookie
Chat on WhatsApp