Chrome 60에서는기능을 추가하여은 TLS가 아닌 연결에 대해 crypto.subtle
을 사용 중지합니다. 보안상의 이유로 로컬 서버를 실행하고 안전한 원격 연결을 localhost
으로 전달해야합니다. localhost
은 기술적으로 이름이 지정된 도메인이 아니기 때문에 TLS를 사용할 수 없으므로 crypto.subtle
을 Chrome (및 Opera와 같은 크롬 기반 브라우저)에서 사용할 수 없게 만들고 asmCrypto.js과 같은 덜 안전한 심을 사용해야합니다. 헤더를 통해 crypto.subtle
을 사용하도록 Chrome에 알리는 방법이 있습니까? 사용자에게 알릴 수있는 설정 (최악의 시나리오)에서 새로운 기능을 비활성화하는 방법이 있습니까?Chrome에서 보안되지 않은 출처에 대해 cryptotle을 사용 설정하는 방법은 무엇인가요?
0
A
답변
1
크롬 60, 그들은 비 TLS 연결
정확하지 않게, crypto.subtle
처음 지원되는 버전 이후 비보안 기원 비활성화됩니다
그러나 localhost
이 보안 원산지 https://www.chromium.org/Home/chromium-security/prefer-secure-origins-for-powerful-new-features
그래서 당신은간주된다 "보안 기원은"르에서 일치 기원은 다음 (스키마, 호스트, 포트) 패턴 중 하나 AST :
(HTTPS, *, *)
(WSS, *, *)
(*, 로컬 호스트, *)
(*, 127/8, *)
(* : 1/128 *)
(파일, *, -)
(크롬 확장, *, -)
http://localhost
에 웹 Cryptographi API를 사용할 수 있어야합니다.
사이트에 HTTPS를 사용하고 있습니까? HTTPS와 HTTP를 혼합하는 것과 관련된 문제가있을 수 있습니다. Chrome은 localhost에 대한 HTTP 연결을 차단합니다. 그러면 127.0.0.1에 대한 자체 서명 인증서를 생성하고 HTTPS를 사용하여 로컬 서버를 시작할 수 있습니다 (@SLaks 대답과 유사하지만 hosts
항목 필요 없음)
0
127.0.0.1
에 유효한 도메인을 가리키는 CNAME 또는 hosts
항목을 만든 다음 해당 도메인에 대한 (아마도 자체 서명 된) 인증서를 가져와야합니다.
실제로 다른 이유로 인해 localhost를 사용할 수 없습니다 (이유는 기억하지 못한다). 그러나 127.0.0.1은 그 문제를 해결하고 localhost와 동일하다 (?). –