LAN에 연결되어 웹 서버 역할을 하며 LAN에 있는 웹 클라이언트에 콘텐츠를 제공하는 (물리적 하드웨어) 위젯을 생성하려는 상황이 있습니다.
위젯에서 클라이언트로의 트래픽은 암호화되어야 하지만 LAN이나 클라이언트를 제어할 수 없다는 문제가 있습니다. 즉, 로컬 CA를 설정하거나 DNS 조정을 수행할 수 없다는 의미입니다.
위젯이 암호화된 데이터를 웹 클라이언트에 제공할 수 있는 방식을 마련하는 것이 가능합니까?
이것이 가능하도록 하는 메커니즘을 생성하는 경우(예: widgetN.thedomainiown.com과 같이 내가 소유한 일부 도메인에 연결됨) 모든 장치에 대한 인증서를 생성하고 게시하는 것이 가능할 수 있습니다. LAN의 모든 것이 크고 넓은 인터넷을 볼 수 있다고 가정하십시오.
나는 다음과 같은 몇 가지 전략을 고려했습니다.
- 위와 같이 각 장치에 대한 인증서를 생성하고 해당 인증서가 설치된 위젯을 배송합니다. 인증서 호스트 이름 불일치가 발생하기 때문에 이것이 작동하지 않는다는 것을 이해합니다.
- 위젯과 클라이언트가 모두 내가 제어하는 신뢰할 수 있는 인터넷 서버를 통해 통신하도록 하세요.
두 번째 경우, 극단적인 경우에는 모든 데이터가 보안 링크를 통해 전달되고 신뢰할 수 있는 서버에 의해 중계될 수 있습니다. 이렇게 하면 문제가 해결될 것이라고 생각하지만 대역폭과 대기 시간 문제로 인해 실행 불가능합니다.
대신 신뢰할 수 있는 서버를 사용하여 위젯과 클라이언트 사이에 암호화된 링크를 설정할 수 있습니까? 나는 이를 위해 자바스크립트 암호화를 사용하는 것에 대해 생각해 보았지만, 내가 읽은 모든 내용에 따르면 자바스크립트 암호화는 단순히 나쁘고 절대 사용해서는 안 된다는 것입니다. 이 경우 문제가 무엇인지 완전히 명확하지 않으므로 깨달음을 얻게되어 기쁩니다.
암호화 프로토콜과 LAN을 통한 암호화를 처리하는 데 사용할 수 있는 필수 인증서를 캡슐화하는 웹 앱을 구성하는 신뢰할 수 있는 서버의 경우입니다. 즉, 신뢰할 수 있는 서버는 로컬 트래픽을 처리하는 데 사용되는 웹 페이지를 제공합니다(동일 출처 정책이 주어지면 이것이 가능합니까?).