이 작업을 하게 된 이유를 먼저 소개 하자면, spring.net 1.3.2 버전이 필요해서 찾고 있다가
- spring.net 의 github 위치를 알게 되었고,
- 해당 버전을 다운로드 한 이후에 빌드를 해 놓고 보니,
- 나의 프로젝트에서 사용하던 기존 버전의 spring dll 을 먼저 찾고 있는 상황이
발생 했습니다. 어차피 같은 dll 이니 버전만 맞추면 되겠거니 하고 생각해서 맞추려고 보니
우선,
- PublicKeyToken 값이 없고, 이 문제를 해결하려다 보니
- dll 을 서명 해야 한다는 것을
알아 냈습니다.
그리고, 한 가지를 더 알았죠... 인생을 X삽질의 연속이라는 것을...
1. PublicKeyToken=null ?
web.config 파일 등에서 다음과 같이 PublicKeyToken를 찾고 있다면, 해당 dll 이 그 #PublicKeyToke...
blog.naver.com
위처럼만 따라 하면 해당 dll 에 PublicKeyToken 를 찾을 수 있습니다.
하지만 이런 경우도 있죠.
PublicKeyToken 이 null 인 경우 입니다.
여담이긴 하지만, 해답을 찾기 위해서 고민을 해야하고 그 고민의 시작 점은 분명 내가 걸어왔던 길 즉, 경험부터 먼저 뒤져보게 된다는 것입니다.
물론, 경험이 많은 사람 일 수록 생각을 잘 안한다는 것이 문제이긴 하지만요(^^;;)
생각이 없어 진 이유야 개인적인 성향이나 성격에 문제 일 수도 있고 문제의 난이도에 따라 틀려 지겠지만 이것저것 다 빼고 나면 내가 모르는 것을 가르쳐 주는 선생님들이 세상 한 가득이라는 것도 문제 겠죠.
해당 내용으로 검색을 해보면,
https://learn.microsoft.com/en-us/answers/questions/394551/publickeytoken-is-null.html
한 줄 답변이 있습니다.
사진 설명을 입력하세요.
내 생각에는 이것이 해답인 것 같네요. dll 이 서명이 안 된 것이다. 입니다.
그런데, 나의 경험치로 조금 만 더 생각을 해 보았다면 알 수도 있지 않았을까? 하는 생각도 드는 것이
- public token 이라고 하는 데, 누군가에게 보여주려면 일반적으로 다 서명을 하지 않을까?
- 그럼, 서명을 해야 되는 것이 아닌가?
하는 생각까지는 갔을 것 같다는 느낌이 들 것 같네요.
그럼, dll 서명 해야만 할 것 같네요.
2. DLL 서명하기
서명을 왜 하는 가에 대해서 - 정확히는 디지털서명 - 누군가 물어본다면(질문도 안하겠지만...ㅋ) 디지털 서명은 그 자산에 대해서 고유한 태그를 다는 작업이 아닌가 하는 생각이 듭니다.
적어도 내가 생활하는 반경 내에서 이 물건은 확실히 보장 한다 라는 느낌일까요?
이 DLL 을 서명하기 위해서 나는 다음 두개의 툴을 준비 했습니다.
해당 DLL을 서명 했습니다. 아래 처럼요
3. 서명 등록하기
마지막으로 서명을 등록해야 하겠죠...
그것도 별로 어렵지 않죠. 아래처럼 프로젝트 정보 > 서명 탭을 선택하고서
해당 pfx 파일을 선택하면, 암호를 입력하라고 나옵니다. 만들었을 때 암호를 입력하면 끝이 납니다.
이제 확인을 다시 한 번 해볼까요?
서명이 잘 된 것을 확인 할 수 있습니다...
이상.
'이것저것' 카테고리의 다른 글
[JMeter] 파일을 이용한 서버 성능 측정 사용 (1) | 2023.01.03 |
---|---|
Windows에서 ASP.NET 임시 파일을 지우는 방법 (0) | 2022.12.23 |
[C#] System.NullReferenceException (0) | 2022.12.20 |
[C#] Dll의 PublicKeyToken 찾기 (0) | 2022.12.19 |
IIS Timeout 확인하기 (0) | 2022.12.03 |