Ngừng sử dụng và xoá bỏ trong Chrome 58

Joe Medley
Joe Medley

Trong hầu hết mọi phiên bản Chrome, chúng tôi nhận thấy có rất nhiều bản cập nhật và những cải tiến đối với sản phẩm, hiệu suất của sản phẩm cũng như các tính năng của Web Nền tảng. Bài viết này mô tả việc ngừng sử dụng và xoá trong Chrome 58, đang ở giai đoạn thử nghiệm beta vào ngày 16 tháng 3. Danh sách này có thể thay đổi bất cứ lúc nào.

Chuột trên Android ngừng kích hoạt TouchEvents

Cho đến Chrome 57, các sự kiện chuột cấp thấp của Android trong Chrome chủ yếu diễn ra sau đường dẫn sự kiện được thiết kế cho các tương tác chạm. Ví dụ: chuyển động kéo chuột xảy ra trong khi người dùng nhấn nút chuột sẽ tạo ra MotionEvents, được phân phối qua View.onTouchEvent

Nhưng vì các sự kiện chạm không thể hỗ trợ tính năng di chuột, nên thao tác di chuột khi di chuột đã tuân theo đường dẫn riêng biệt. Thiết kế này có nhiều tác dụng phụ, trong đó có cả hoạt động tương tác với chuột đang kích hoạt TouchEvents, tất cả các nút trên chuột xuất hiện dưới dạng các nút chuột tráiMouseEvents đang bị TouchEvents chặn.

Kể từ Chrome 58, chuột trên Android M trở lên sẽ:

  • Không còn kích hoạt TouchEvents nữa.
  • Kích hoạt một chuỗi MouseEvents nhất quán bằng các nút và các thuộc tính khác.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Xoá kiểu khớp không phân biệt chữ hoa chữ thường cho thuộc tính usemap

Thuộc tính usemap trước đây được định nghĩa là không có chữ hoa chữ thường. Rất tiếc Việc triển khai việc này đủ phức tạp để không trình duyệt nào triển khai chính xác. Nghiên cứu cho thấy rằng một thuật toán phức tạp như vậy là không cần thiết, và ngay cả việc khớp không phân biệt chữ hoa chữ thường ASCII cũng không cần thiết.

Do đó, quy cách đã được cập nhật để tính năng so khớp phân biệt chữ hoa chữ thường áp dụng. Hành vi cũ không còn được dùng trong Chrome 57 và hiện đã bị xoá.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Xoá các thao tác điều hướng khung hình trên cùng do nội dung khởi tạo khỏi các URL dữ liệu

Do không quen thuộc với những người dùng trình duyệt không có chuyên môn kỹ thuật, chúng tôi ngày càng thấy giao thức data: được dùng để giả mạo và lừa đảo cuộc tấn công. Để ngăn điều này, chúng tôi sẽ chặn không cho các trang web tải URL data: trong khung hình trên cùng. Điều này áp dụng cho thẻ <a>, window.open window.location và các cơ chế tương tự. Lược đồ data: vẫn sẽ hoạt động cho được tải bên dưới bởi một trang.

Tính năng này sẽ bị loại bỏ trong Chrome 60.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Xoá tên không dùng nữa cho thuộc tính đường dẫn chuyển động

Thuộc tính CSS về đường dẫn chuyển động cho phép tác giả tạo ảnh động cho mọi đối tượng đồ họa dọc theo đường dẫn do tác giả chỉ định. Theo thông số kỹ thuật, một số thuộc tính đã bị triển khai trong Chrome 45. Tên của những thuộc tính này đã được thay đổi trong thông số kỹ thuật vào giữa năm 2016. Chrome đã triển khai tên mới trong Chrome 55 và Chrome 56. Các cảnh báo về việc ngừng sử dụng Console cũng được triển khai.

Trong Chrome 58, tên tài sản cũ sẽ bị xoá. Các cơ sở lưu trú bị ảnh hưởng và tên mới của chúng được hiển thị bên dưới.

Đã xoá tài sản Tên hiện tại
đường-chuyển-động đường dẫn bù trừ
phần bù chuyển động khoảng cách bù trừ
xoay-chuyển động xoay bù trừ
chuyển động bù trừ

Ý định xoá

Xoá EME khỏi bối cảnh không an toàn

Một số cách sử dụng Tiện ích phương tiện đã mã hoá (EME) tiết lộ các cách triển khai quản lý quyền kỹ thuật số không phải là nguồn mở, liên quan đến quyền truy cập vào các giá trị nhận dạng duy nhất ổn định và/hoặc chạy không có hộp cát hoặc quyền truy cập đặc quyền. Rủi ro bảo mật sẽ tăng lên đối với các trang web được tiếp xúc thông qua trang web không bảo mật HTTP vì các URL này đều có thể bị bất kỳ ai trên kênh tấn công. Ngoài ra, khi cần có sự đồng ý của người dùng, việc chấp nhận vẫn duy trì đối với một trang web HTTP không an toàn có thể bị kẻ tấn công như vậy khai thác.

Chúng tôi đã ngừng hỗ trợ bối cảnh không an toàn khỏi Quy cách của EME phiên bản 1 và không được hỗ trợ trong đề xuất được đề xuất hoặc như dự kiến trong trận chung kết tiếp theo. sẽ không nằm trong đề xuất sắp tới đề xuất hoặc đề xuất cuối cùng tiếp theo. API đã và đang cho thấy thông báo ngừng sử dụng đối với các nguồn gốc không an toàn kể từ Chrome 44 (tháng 5 năm 2015). Trong Chrome 58, giờ đã bị xoá. Thay đổi này là một phần trong nỗ lực lớn hơn của chúng tôi nhằm xoá các tính năng mạnh mẽ khỏi nguồn gốc không an toàn.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Xoá phương thức gọi cũ cho HTMLNhúngElement và HTMLObjectElement

Việc giao diện có phương thức gọi cũ nghĩa là một thực thể có thể được gọi dưới dạng một . Hiện tại, HTMLEmbedElementHTMLObjectElement hỗ trợ định dạng này của Google. Trong Chrome 57, tính năng này không còn được dùng nữa. Kể từ Chrome 58, việc gọi sẽ gửi ra một ngoại lệ.

Thay đổi này giúp Chrome phù hợp với những thay đổi gần đây về thông số kỹ thuật. Hành vi cũ không được hỗ trợ trong Edge hoặc Safari và đang được đã bị xoá khỏi Firefox.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Xoá thuật toán mật mã ChaCha20-Poly1305 tiền tiêu chuẩn

Vào năm 2013, Chrome 31 đã được triển khai bộ thuật toán mật mã TLS mới dựa trên các thuật toán ChaCha20 và Poly1305 của Giáo sư Dan Bernstein. Đây là sau đó được chuẩn hoá, với những tinh chỉnh nhỏ, tại IETF như RFC 7539RFC 7905. Chúng tôi đã vận chuyển biến thể được chuẩn hoá vào đầu năm 2016 bằng Chrome 49. Chúng tôi hiện đã xoá các biến thể trước tiêu chuẩn.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Ngừng hỗ trợ tính năng so khớpCommonName trong các chứng chỉ

RFC 2818 mô tả hai phương thức để so khớp tên miền so với một chứng chỉ: sử dụng các tên có sẵn trong tiện ích subjectAlternativeName hoặc khi không có tiện ích SAN, quay lại commonName. Phương án dự phòng cho commonName là không được dùng nữa trong RFC 2818 (được xuất bản vào năm 2000), nhưng hỗ trợ vẫn còn trong một số Ứng dụng TLS thường không chính xác.

Việc sử dụng trường subjectAlternativeName khiến việc này không rõ ràng đang thể hiện sự liên kết với địa chỉ IP hoặc tên miền và được xác định đầy đủ về mối tương tác với các Giới hạn tên. Tuy nhiên, commonName không rõ ràng, do đó, nguồn hỗ trợ cho mã này là một nguồn lỗi bảo mật trong Chrome, các thư viện mà Chrome sử dụng và trong hệ sinh thái TLS lớn.

Rủi ro về khả năng tương thích khi xoá commonName ở mức thấp. RFC 2818 có không dùng tính năng này trong gần 2 thập kỷ và yêu cầu về cơ sở (tất cả các tổ chức phát hành chứng chỉ được tin cậy công khai phải tuân thủ) đã yêu cầu sự hiện diện của subjectAltName kể từ năm 2012. Firefox đã yêu cầu subjectAltName cho mọi chứng chỉ được tin cậy công khai mới phát hành kể từ Firefox 48.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Các thành phần giao diện regions, addRegion()removeRegion() đã được bị xoá khỏi thông số kỹ thuật WebVTT và bị xoá trong Chrome 58 để tuân thủ thông số kỹ thuật mới nhất. Chúng tôi dự kiến rằng sẽ ít có tác động từ việc gỡ bỏ này vì tính năng này không bao giờ được bật theo mặc định (có nghĩa là sau một lá cờ). Những người cần giải pháp thay thế có thể sử dụng VTTCue.region đang được thêm vào Chrome 58.

Trình theo dõi Chromestatus | Lỗi Chromium

WebAudio: xoá giao diện AudioSourceNode

Giao diện AudioSourceNode không thuộc Thông số kỹ thuật của âm thanh trên web, không thể xây dựng được và không có thuộc tính nên về cơ bản nó không có chức năng hỗ trợ tiếp cận. Do đó, nó đang bị xoá.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Xoá thuộc tính chung webkitdropzone

Thuộc tính chung dropzone được giới thiệu bởi Quy cách kéo và thả HTML5 làm phương thức khai báo để chỉ định việc một phần tử HTML có sẵn sàng trở thành mục tiêu của thao tác kéo và thả, các loại nội dung có thể được thả vào phần tử và thao tác kéo và thả (sao chép/di chuyển/liên kết).

Thuộc tính này không thu hút được các nhà cung cấp trình duyệt. Nhấp nháy và WebKit chỉ triển khai một dạng tiền tố của thuộc tính là webkitdropzone. Vì Đã xoá thuộc tính dropzone khỏi thông số kỹ thuật trong đầu tháng 3 năm 2017 phiên bản có tiền tố sẽ bị xoá khỏi Chrome.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Ngừng sử dụng thông báo theo cách không an toàn

Thông báo là một tính năng mạnh mẽ vì tính năng này cho phép các trang web gọi ra một hệ thống Giao diện người dùng để truyền chính thông tin riêng tư hoặc tín hiệu cho biết đã được thay đổi. Kẻ tấn công có thể đánh cắp hoặc đánh cắp bất kỳ thông tin nào được gửi thông qua thông báo qua kết nối không an toàn. Đẩy web qua yêu cầu một trình bảo mật nguồn gốc, nên thay đổi này sẽ điều chỉnh thông báo không đẩy thành thông báo đẩy thông báo. Thay đổi này là một phần trong nỗ lực lớn hơn của chúng tôi nhằm xoá các tính năng mạnh mẽ khỏi nguồn gốc không an toàn.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

Ngừng sử dụng thông báo từ iframe không an toàn

Các yêu cầu quyền từ iframe có thể khiến người dùng nhầm lẫn vì khó phân biệt giữa nguồn gốc của trang chứa và nguồn gốc của iframe đang thực hiện yêu cầu. Khi phạm vi yêu cầu không rõ ràng, sẽ khó để người dùng đánh giá xem nên cấp hay từ chối cấp quyền.

Việc không cho phép thông báo trong iframe cũng sẽ điều chỉnh các yêu cầu đối với quyền gửi thông báo so với quyền gửi thông báo đẩy, giúp giảm phiền hà cho người dùng nhà phát triển.

Những nhà phát triển cần có chức năng này có thể mở một cửa sổ mới để yêu cầu quyền gửi thông báo.

Tính năng xoá được xử lý trong Chrome 62.

Ý định xoá | Trình theo dõi trạng thái Chrome | Lỗi Chromium

XoáindexDB.webkitGetDatabaseNames()

Chúng tôi đã thêm tính năng này khi Cơ sở dữ liệu được lập chỉ mục còn khá mới mẻ trong Chrome và có thêm tiền tố thật sự giận dữ. API trả về không đồng bộ danh sách cơ sở dữ liệu hiện có cùng một nguồn gốc. Đây là điều hợp lý.

Rất tiếc là thiết kế có nhiều sai sót, khiến kết quả có thể sớm lỗi thời vì chúng được trả về, nên chỉ có thể dùng để ghi nhật ký, chứ không thể dùng logic ứng dụng. Chiến lược phát hành đĩa đơn Vấn đề trên github theo dõi/đường liên kết đến thảo luận trước đây về các phương án thay thế, mà đòi hỏi phải có một phương pháp khác. Mặc dù các nhà phát triển luôn quan tâm đến chương trình này, nhưng do thiếu các công cụ trình duyệt tiến trình duyệt web, vấn đề đã được các tác giả thư viện giải quyết.

Các nhà phát triển cần chức năng này cần phát triển giải pháp của riêng mình. Ví dụ: các thư viện như Dexie.js sử dụng bảng chung là một cơ sở dữ liệu khác để theo dõi tên của cơ sở dữ liệu.

Tính năng này sẽ bị loại bỏ trong Chrome 60.

Ý định ngừng sử dụng | Trình theo dõi trạng thái Chrome | Lỗi Chromium