services/network: remove stale crypto/sha2 and secure_hash includes
MERGED2026services/networkcrypto
2026. 8. 20.
jmsmg
crypto/hash 마이그레이션 이슈(crbug.com/372283556)의 일환으로, services/network 디렉토리에 남아 있던 구 해시 API(crypto/sha2.h, crypto/secure_hash.h)의 불필요한 include를 제거하였습니다.
문제 설명
- issue url: https://crbug.com/372283556
- 위 이슈는 구 해시 API(
crypto/sha2.h,crypto/secure_hash.h)를 새로운crypto/hash인터페이스로 마이그레이션하는 작업입니다. - services/network 디렉토리를 조사해 보니, 실제 호출부는 이미 업스트림에서
crypto/hashAPI로 마이그레이션이 끝난 상태였습니다. - 하지만 호출부를 고치면서 미처 정리되지 않은 구 API의 include 문이 여러 파일에 그대로 남아 있었습니다. 사용하지 않는 include는 불필요한 의존성을 만들고, 구 API 제거를 방해합니다.
해결 내용
7개 파일에서 더 이상 사용되지 않는 include 9줄을 제거했습니다.
git grep으로 services/network 내crypto/sha2.h,crypto/secure_hash.h를 include 하는 파일을 모두 찾았습니다.각 파일에서
crypto::SHA256Hash(),crypto::SecureHash등 구 API 사용처가 실제로 남아 있는지 확인했습니다. 남아 있는 것은 include 문뿐이었습니다.해당 include 문을 제거했습니다.
--- a/services/network/sct_auditing/sct_auditing_cache.cc +++ b/services/network/sct_auditing/sct_auditing_cache.cc -#include "crypto/secure_hash.h" -#include "crypto/sha2.h"수정한 파일 목록:
network_context_unittest.ccsct_auditing/sct_auditing_cache.ccsct_auditing/sct_auditing_cache_unittest.ccssl_config_service_mojo_unittest.cctest/trust_token_request_handler.cctrust_tokens/trust_token_client_data_canonicalization.cctrust_tokens/trust_token_client_data_canonicalization_unittest.cc
테스트 방법
사용하지 않는 include만 제거하는 변경이라 동작 변화가 없으며, 핵심 검증은 "정말 사용처가 없는가"와 "컴파일이 되는가"입니다.
- include 제거 후
git grep -nE 'crypto/(sha2|secure_hash)' -- services/network로 services/network에 구 API 참조가 하나도 남지 않았음을 확인했습니다.- grep에 걸리는
SHA256Hash매치들은 crypto가 아닌net::SHA256HashValue타입으로, 이번 마이그레이션과 무관합니다.
- grep에 걸리는
- 수정된 unittest 파일들은
services_unittests타깃에 속하므로autoninja -C out/Default services_unittests빌드로 컴파일을 확인할 수 있습니다. - 다른 플랫폼을 포함한 전체 검증은 Gerrit CQ dry run에 맡겼습니다. 멘티 계정에는 tryjob 권한이 없어 CQ 실행은 멘토님이 진행해 주셨습니다.
배운 점
- 멘토님께서 작은 기여부터 시작하는 것이 좋다고 하셔서 민섭님 이슈 기반으로 작성을 했는데, 작은 기여로한바퀴 쭉 흐름을 익히는 것이 좋은 것 같습니다.
- include 정리 CL은 diff는 작지만, "사용처가 없다"는 것을 스스로 증명하는 조사 과정(grep, 타입 구분)이 본 작업이라는 점을 체감했습니다.
- OWNERS 디렉토리 단위로 CL 범위를 나누고, 해당 디렉토리의 활동적인 OWNER를 리뷰어로 지정하는 Chromium 리뷰 프로세스를 경험했습니다.
참고 자료
- issue url: https://crbug.com/372283556
- gerrit url: https://crrev.com/c/8264232
- new API: crypto/hash.h
- old API: crypto/sha2.h, crypto/secure_hash.h