무엇을 하나요?
서명하지 않은 요청이 오면 서버는 일회용 nonce와 함께 401 응답을 보낸다. 클라이언트는 nonce를 개인키로 서명해 Authorization 헤더에 담아 다시 요청한다. 미들웨어는 서명에서 주소를 복원해 DID에 담긴 주소와 대조하고 인증된 DID를 반환한다. nonce는 메모리에 60초 동안 보관되며 한 번 사용하면 소모된다. 현재 설치에는 네이티브 암호화 라이브러리를 빌드할 Rust 도구 체인이 필요하다.
주요 기능
- 미서명 요청에 일회용 nonce가 담긴 401 응답 반환
- 클라이언트가 서명해 다시 보낸 요청 검증
- 서명에서 복원한 주소와 DID의 주소 대조
- 인증된 DID를 애플리케이션에 전달
- nonce를 60초 동안 메모리에 보관하고 사용 후 소모