강좌 / 팁

소프트웨어 한글 2020 제품키 자동 입력 및 업데이트 통합하기

2022.02.06 08:04

CraXicS 조회:10935 추천:44

한글 2020 설치 시 제품키 입력 및 최신 업데이트를 자동으로 설치하기 위한 스크립트 작성 방법에 대해 설명합니다.

 

여기에서는 한컴오피스 2020이 아닌 한글 2020에서, 교육기관용 라이센스로 테스트했습니다.

 

한글 2018의 제품키는 한글 2020에서도 호환되는 것으로 확인됩니다.

과거 한글 2010 제품의 마이너 업그레이드가 SE, SE+ 이고 2014의 마이너 업그레이드가 2014 VP 인것을 감안했을 때

한글 2018의 마이너 업그레이드 버전은 2020인것 같습니다. 크게 달라진 점이 없고 제품 지원 기간이 2026년으로 동일하더군요.

 

한컴에서는 한글 제품을 설치할 때 제품키 입력을 요청하는 대화상자에서 키를 자동으로 입력하기 위한 옵션을 제공해왔습니다.

 

한글 2018까지만 해도 설치 패키지의 Install\InstallerConfig.ini에서 [Install] 섹션에 PIDKEY=XXXXX-XXXXX-XXXXX-XXXXX 를 입력하면 간단하게 구현할 수 있었지만, 제품키를 평문으로 저장하기 때문에 이를 보안 이슈로 판단하여 이 기능을 끄고 변환된 제품키인 ECDATA를 기본값으로 변경한 것으로 판단됩니다. 참조: https://blog.naver.com/musha3630/221671899762 / https://blog.naver.com/musha3630/221870027649

 

기존 PIDKEY에서 지정했던 제품키를 ECDATA 키로 변환하는 과정이 관건인데, 변환된 값을 얻기위한 함수를 구현하기 위해 일단 PIDKEY - ECDATA 쌍을 얻는 것이 우선이였습니다. 이건 제조사에서 체험판으로 주는 패키지에 존재할 것 같아 현재 체험판으로 제공하고 있는 한글 2022 제품을 다운받아 InstallerConfig.ini를 분석했습니다.

 

해당 파일에 존재하는 ECDATA 값은 기존 PIDKEY를 변환한 값으로 추정됩니다.

 

이 값을 변환한 원래값. 즉, PIDKEY 값을 얻어내야합니다. 이 제품키는 2022 평가판용이므로 2020 인스톨러에서는 키가 잘못됬다고 인식할 것입니다. 2020 패키지의 InstallerConfig.ini에 ECDATA 값을 넣고 2020 인스톨러를 실행하면 PIDKEY 값이 변환되어 나오게 됩니다.

 

하이픈을 제외한 두 키의 문자 갯수가 동일하네요. 또, 문자가 존재하는 자리, 숫자가 존재하는 자리가 동일합니다.

 

하이픈을 기준으로 네개의 서브키는 각각 ECDATA의 3번째, 1번째, 4번째, 2번째 서브키로 할당되었네요.

그리고 문자별로, 숫자별로 얼마씩 더하면 변환된 값이 됩니다. 9 그리고 Z를 넘어가는 오버플로우는 다시 0, A로 돌아가네요.

 

이제 가지고 있는 제품키를 ECDATA 키로 변환하고 이를 InstallerConfig.ini에 저장하면 인스톨러 실행 시 자동으로 키가 입력된 상태로 남게되네요.

하지만, 그 상태에서 키의 유효성 검사가 자동으로 이뤄지지 않아서 키 입력 상자에 키보드 입력이 가해져야만 합니다. 그래서 LevelOption을 통해 자동 설치를 하는 것이 좋을 것 같습니다.

 

hancom.com에서는 제품 업데이트 파일을 무료로 다운로드할 수 있도록 링크를 제공하고 있습니다.

최신 파일을 다운받아

 

[Install]

NoRestart=1

 

[PostInstall]

ExtRun0=Install\HOffice2020Update_20220119.exe

ExtRunParam0=/silent

 

이런식으로 작성하면 설치가 끝난 후 자동으로 패치를 시작합니다. 단, IE가 실행중일 경우 IE종료안내메시지 없이 업데이트프로그램이 종료됩니다.

 

키 변환용 파이썬 소스코드를 EXE 파일로 포팅하여 첨부해드립니다. HWP-KEY-CONVERTER.exe

 

안티바이러스가 탐지할 것이니, 검사 예외 경로에서 실행해주세요. 소스코드는 https://github.com/loopback-kr/hwp-key-converter에 공개하였습니다.

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4480 윈 도 우| PrincePE_V18.5 [164] %카리스마 204984 99 02-02
4479 윈 도 우| 윈도우7 Windows 정품 인증 기술 업데이트로 인증하기 [21] 얼룩강아지 111628 0 02-27
4478 윈 도 우| 비스타(VISTA) 인증 후 무한 리부팅 현상 해결법 [1] gooddew 98131 0 06-17
4477 윈 도 우| 바이오스 안에 OEM SLIC 가 내장되었는지 확인하는 방법 [5] gooddew 84995 0 06-17
4476 윈 도 우| UEFI-모드 부팅 [설치 USB] 만들기 [8] eunnano 77025 0 09-07
4475 A.I 사용법 무작정 따라하기 (스샷 첨부) - 마지막 수정 [67] PoLaRiS 74990 6 09-10
4474 하드웨어| 유튜브 버퍼링 완전해결2 (hosts파일 사용, DNS변경 x, SKB... [44] hsk 63915 6 05-06
4473 윈 도 우| 비스타/세븐 DVD-4cd 분할 가이드 v2 김간지 63412 0 01-21
4472 윈 도 우| Usb를 이용한 XP설치 [21] 고맙쥐 62280 11 10-23
4471 윈 도 우| 비스타의 숨겨진 부팅로고를 보자 [5] cdcsj 60484 0 05-26
4470 윈 도 우| 소소한팁..Windows 로그온 사진이 작을때.. 김간지 59253 0 07-12
4469 윈 도 우| God Mode 만들기 [5] 적광 55432 0 12-26
4468 기 타| Superfetch 기능 사용중단하기 [13] gooddew 55294 1 09-16
4467 윈 도 우| Win7_8 PE/수정/추가/바탕화면/교체하기 [13] 까꾸리 54308 17 05-18
4466 Windows 7 과 XP 프린터와 파일 서로 공유하기 [5] sp2 52848 3 08-22
4465 윈 도 우| 윈도우8 다국어 언어팩 설치 방법(영문 기준) [6] chkid 51182 5 11-11
4464 윈 도 우| 삼성 노트북의 복원솔루션 5 를 이용하여 SSD에 복원영역 ... [13] 울랄라백수 48974 4 06-17
4463 소프트웨어| USB키보드인채로 PLOP 사용하기 (USB 2.0 MODE + PE) [19] hazuki 48384 0 01-19
4462 윈 도 우| 만능고스트 사용후 hal.dll 오류로 부터 벗어나기 [2] cdcsj 47763 0 04-29
XE1.11.6 Layout1.4.8