1. 서론
글로벌 환경의 실시간 기계 납품 요구에 따라, 기계 생산 기업들은 각자의 경쟁력을 발전시켜 설계와 가공·생산을 분리하게 되었다. 여기서 더 나아가 설계 기업은 CNC(Computerized Numerical Control) 원격 설정 기술을 통해 가공·생산 기업의 CNC에 직접 접근, 가공 정보를 직접 설정하게 되었다. 이를 통해 가공 정보 전달 시간을 대폭 축소하면서, 기계 납품 적시성을 높일 수 있게 되었다 [1].
그러나 이러한 CNC 원격 설정 환경은 설계 기업의 가공 정보 기밀성을 보장하기 어려운 문제점이 있다. 가공·생산 기업의 CNC에는 다수의 설계 기업이 접근할 수 있다. 이러한 환경에서 악의적 사용자는 목표한 기업이 CNC에 저장한 가공 정보에 접근할 수 있으며, 이를 획득 후 악용할 수 있다[2].
본 연구에서는 이러한 문제점을 해결하기 위하여 다중 사용자 환경의 원격 CNC 가공 정보 보호 기술을 제안한다. 제안하는 가공 정보 보호 기술은 사용자별 독립된 암호키를 적용한 구조로, CNC에 대한 다수 사용자 접근을 허용하면서 CNC에 저장되는 가공 정보를 보호할 수 있다[3].
본 연구에서 제안하는 다중 사용자 환경의 원격 CNC 가공 정보 보호 기술을 기계 부품 가공 현장에 적용한다면, 설계 기업은 기계 부품 가공 정보의 기밀성을 보장할 수 있게 된다.
2. 관련 연구
2.1 원격 CNC 기반 기술
CNC는 전기·전자 회로 기반의 수치 제어(NC, Numerical Controller)에 컴퓨터를 접목한 공작기계 제어 시스템을 말한다[4]. 사용자는 목표한 부품 생산을 위해, CNC에서 자재를 선택하고 가공 위치와 가공 절차를 입력 후 가공을 개시하면, CNC에 연결된 공작기계는 입력된 가공 정보에 따라 자재를 가공한다. CNC는 수작업 방식의 자재 가공보다 정밀한 부품을 생산할 수 있을 뿐만 아니라, 가공 정보를 재사용할 수 있는 장점이 있다[5].
CNC는 펌웨어 환경에 기반하여 동작하며, 기본적으로 공작기계에 종속된다. 만약 기계 생산 기업이 유효하지 않거나 펌웨어 업그레이드를 중지한다면, 가공정보를 추가하거나 변경할 수 없게 된다. 이러한 문제점을 해결하기 위하여 그림 1과 같은 오픈 플랫폼 기반의 CNC가 제안되었다[6, 7].

(그림 1) 오픈 플랫폼 기반 CNC 아키텍처
오픈 플랫폼 기반 CNC는 범용 운영체제를 사용한다. CNC 개발자는 범용 운영체제(Operatinal System)에 공작기계에 해당하는 디바이스 드라이버를 배치한다. 이후 Application, Kernel API를 사용하여 CNC를 개발한다. 필요하다면 네트워크(Communication System) 기능을 활용할 수 있다. 이 방식은 공작기계의 변경 관리와 유지보수에 유리하다. 공작기계를 추가하거나 바꾸더라도, 공작기계에 대한 디바이스 드라이버를 변경하면, 해당 공작기계를 활용할 수 있는 장점이 있다.
시장 환경의 변화에 따라 기계 생산 기업은 각 기업의 전문성에 따라 설계와 생산을 분리하여 발전시켰다. 설계 기업은 기계 활용 분야의 비즈니스 프로세스에 따라 설계에 집중하였으며, 생산 기업은 설계 내역에 따라 자재를 가공하고 조립·생산하는데 집중하였다. 이러한 방식은 기계 납품 속도를 높일 수 있는 장점이 있다[8].
설계와 생산을 분리한 방식은 납품 적시성을 높일 수 있지만, 가공 과정에서 발생하는 오차 처리에 의한 지연 시간이 발생한다. 이 지연 시간 단축을 위해 원격 CNC 가공 정보 설정 기능이 제안되었다.
그림 2는 대표적인 원격 CNC에 가공 정보를 설정하고 CNC를 제어하는 시스템 구조이다. 사용자는 Web Browser에서 가공 정보를 설정하면, 가공 정보는 Data Server에 저장되며, Application Server를 통해 공작기계를 제어한다 [9].

(그림 2) 원격 CNC 제어 시스템 구조
2.2 원격 CNC 활용 환경의 보안 요구사항
원격 CNC에 접근하여 가공 정보를 설정하는 기술은, 설계와 생산을 분리한 산업 현장에서 가공 정보의 물리적 이동 시간 단축으로 기계 납품 적시성을 보장할 수 있다. 그러나 가공 정보 보안 관점에서는 취약하다.
기계 설계 기업은 기계를 요청한 기업의 기계 요구 사항 만족을 위해 기계 부품을 설계한다. 설계에 따라 생성된 자재 가공 정보는 최종적으로 원격 CNC에 전달되어 저장된다. 이 원격 CNC에 접속할 수 있는 설계 담당자는 복수가 될 수 있다. 세션 제어 기술을 적용하여 사용자 동시 접속을 제한할 수 있지만, 접속한 사용자는 우회 접근을 통해 허가되지 않은 다른 기업의 가공 정보에 접근할 수 있다[10].
설계자는 해당 분야에 대한 이해도가 높다. 이 설계자가 타 기업에서 설정·저장한 가공 정보를 획득한다면, 여기서 많은 정보를 유추할 수 있다. 이 악의적 설계자는 가공 정보를 저장한 기업의 기밀 정보를 유출하거나 임의 변조 후 다시 CNC에 저장할 수 있다. 이후 해당 기업이 저장된 가공 정보를 재사용한다면 자재 가공에 오차가 발생하여 그 품질이 저하된다.
자재 가공을 위한 가공 정보는 기본적으로 기밀성이 요구된다. 특히 항공이나 우주, 국방 분야에서 요구되는 기계 부품은 높은 보안 강도가 요구된다. 그러므로 원격 CNC는 설계 기업이 전달·저장한 가공 정보를 보호할 수 있는 기능이 적용되어야 한다[11].
3. 다중 사용자 환경의 원격 CNC 가공 정보 보호
3.1 원격 CNC 가공 정보 암호화 시스템 구조
본 연구에서는 다중 사용자 환경에서, 원격 CNC에서 요구하는 가공 정보의 기밀성을 유지할 수 있는 구조를 제안한다. 제안하는 구조는 그림 3과 같다.

(그림 3) 원격 CNC 가공 정보 암호화 시스템구조
Local Design Application은 설계자의 가공 정보를 전달하는 Application이다. Authentication Component는 원격 CNC 서버에 접근할 때 사용되는 인증 Client 역할을 담당한다.
원격 CNC 서버의 Authentication Server는 User Information Database에 저장된 인증 정보에 접근, 설계자를 식별하고 인증한다. Machining Information Handling Server는 Machining Information Database에 저장된 가공 정보를 암복호화한다. 여기서 적용되는 암호키는 Crypto Key Management Server에 저장된다.
3.2 원격 CNC 가공 정보 활용 절차
본 연구에서 제안하는 다중 사용자 환경의 원격 CNC 가공 정보 보호 기술은 크게 암호키 등록 과정 (User Crypto Key Register Process)과 이를 활용하여 가공 정보를 암복호화하는 활용 과정(Machining Information Handling Process)으로 나뉘며, 그림 4와 같이 동작한다.

(그림 4) 원격 CNC 가공 정보 암호화 시스템 활용 구조
설계자 계정을 등록할 때, CNC의 Authentication Server는 해당 계정에 대한 암호키(Crypto Key)를 Crypto Key Management Database에 등록한다. 설계자는 로그인 과정에서 Authentication Server에 접근하며, Authentication Server는 User Information Database에 접근하여 설계자를 검증한다. 설계자 검증을 완료하면 Authentication Server는 검증 결과를 Machining Information Handling Server에 전달한다.
이후 설계자는 가공 정보 (Machining Information)을 생성하거나 접근 후 수정할 수 있다. 가공 정보는 설계자 계정에 해당되는 암호키로 암호화되어 있다. 로그인을 완료한 설계자는 가공 정보를 생성하고 이를 CNC에 전달하면, CNC의 Machining Information Handling Server는 Crypto Key Management Database에 저장된 설계자 암호키를 확인하고, 이를 사용하여 수신한 가공 정보를 암호화 후 Machining Information Database에 저장한다.
설계자가 가공 정보에 접근하여 가공을 개시하거나 가공 정보를 수정할 때는, 평문 가공 정보를 사용해야 한다. 이를 위하여 설계자가 CNC에 저장된 가공 정보에 접근할 때, Machining Information Handling Server는 Machining Information Database에 저장된 가공 정보를 확인하고, 이를 Crypto Key Management Database에 저장된 설계자 암호키를 사용하여 복호화한 후 이를 설계자에게 전달한다.
4. 원격 다중 사용자 환경의 CNC 가공 정보 보호 기술 검증
4.1 검증 환경
본 연구에서 제안하는 다중 사용자 환경의 원격 CNC 가공 정보 보호 기술은, 범용 환경에서 CNC에 저장된 설계자의 가공 정보의 기밀성 유지를 보장해야 한다. 그러므로 CNC 범용 시스템 환경을 고려하여 목표 기능을 검증한다.
본 연구에서 제안하는 기술의 기능 검증을 위해, Local Design Application과 오픈 플랫폼 기반의 CNC 운영체제는 모두 Windows 10 Professional을 적용하였다. Hardware 환경으로, CPU는 i5 7500, Memory 16Gbyte, SSD 120Gbyte 시스템을 사용하였다. 이 검증 환경에 가공 정보를 설정하는 Application으로 ㈜ RNT의 PCRS Data Maker를 사용하였으며, 여기에 원격지 CNC에 접근하여 ID/ Password 기반 인증 기능을 제공하는 Authentication Component를 구현하였다.
원격 CNC에는 Authentication Server와 Machining Information Handling Server를 구현하였다. User Database와 Crypto Key Management Database, Machining Information Database로는 MySQL 5.1.51을 사용하였다. 사용자 Password에 적용되는 Hash 알고리즘은 SHA-256을 적용하였으며, Machining Information Handling Server에서 가공 정보 암복호화에 사용되는 암호 알고리즘은 AES-256을 적용하였다.
4.2 검증 항목 및 검증 결과
본 연구에서 제안하는 다중 사용자 환경의 원격 CNC 가공 정보 보호 기술은 그 기밀성을 보장할 수 있어야 한다. 이를 위해 목표한 기능의 실효성을 검증하기 위해 표 1과 같은 단위 기능 검증 항목을 도출하였다.
<표 1> 기능 검증 항목

표 1의 기능을 검증 환경에서 확인한 결과, 모든 기능이 정상 동작하는 것을 확인하였다. 그러므로 본 연구에서 제안하는 기술은 다중 사용자 환경에서 CNC에 저장된 가공 정보의 기밀성을 유지할 수 있는 것으로 확인되었다.
5. 결론
공유된 CNC는 다수의 설계자가 접근할 수 있으며, 각 사용자는 중요 가공 정보를 CNC에 저장한다. 이러한 보안 환경에서, 기업의 중요 정보가 악의적 공격자에 의해 악용될 수 있다.
본 연구에서는 이러한 보안 환경을 개선하기 위해, 암호 알고리즘 기반의 다중 사용자 환경에서 원격 CNC에 저장된 가공 정보를 보호할 수 있는 기술을 제안하였다. 또 제안된 기술의 실효성을 검증하기 위해 검증 환경을 구축하고, 실증 구현하여 기능 제공을 위한 단위 기능을 검증하였다. 제안된 기술을 CNC에 적용한다면, 각 기업의 기밀성을 유지하면서 원격지 CNC에 가공 정보를 설정할 수 있다.
현재 CNC 가공 정보 보안 연구는 초기 단계로, 동일·유사 연구가 없어 성능 비교 검증을 수행하지 못하였다. 또 본 연구는 저장된 가공 정보의 기밀성을 보장할 수 있지만, 활용되고 있는 상태에서 기밀성을 보장할 수는 없다. 그러므로 가공 정보가 활용되고 있는 상황에서 기밀성을 보장하기 위한 추가 연구가 필요하다.
참고문헌
- S. A. Aebersold, M. O. Akinsolu, S. Monir and M. L. Jones, "Ubiquitous control of a CNC machine: Proof of concept for industrial IoT application," Information, vol.12, no.12, pp.529, 2021.
- W. Xiang, K. Yu, F. Han, L. Fang, D. He Q. L. Han, "Advanced manufacturing in industry 5.0: A survey of key enabling technologies and future trends," IEEE Transactions on Industrial Informatics, vol.20, no.2, pp.1055-1068, 2023.
- F. Longo and A. Padovano, "Voice-enabled Assistants of the Operator 4.0 in the Social Smart Factory: Prospective role and challenges for an advanced human–machine interaction," Manufacturing Letters, vol.26, pp.12-16, 2020. https://doi.org/10.1016/j.mfglet.2020.09.001
- T. T. Tung, N. X. Quynh and T. V. Minh, "Development and Implementation of a Mini CNC Milling Machine," Acta Marisiensis. Seria Technologica, vol.18, no.2, pp.24-28, 2021. https://doi.org/10.2478/amset-2021-0014
- M. Fatriyana, "CNC program and programming of CNC machine," Journal of Mechanical Science and Engineering, vol.7, no.2, pp.19-23, 2020. https://doi.org/10.36706/jmse.v7i1.37
- O. L. Asato, E. R. R. Kato, R. Y. Inamasu, and A. J. V. Porto, "Analysis of open CNC architecture for machine tools," Journal of the Brazilian Society of Mechanical Sciences, vol.24, no.208-212, 2002.
- Q. Liu, H. Liu, J. Xiao, W. Tian, Y. Ma and B. Li, "Open-architecture of CNC system and mirror milling technology for a 5-axis hybrid robot," Robotics and Computer-Integrated Manufacturing, vol.81, pp.102504, 2023.
- A. Paszkiewicz, M. Bolanowski, G. Budzik, L. Przeszłowski and M. Oleksy, "Process of creating an integrated design and manufacturing environment as part of the structure of industry 4.0," Processes, vol.8, no.9, pp.1019, 2020.
- L. Wang, P. Orban, A. Cunningham and S. Lang, "Remote real-time CNC machining for web-based manufacturing," Robotics and Computer-Integrated Manufacturing, vol.20, no.6, pp.563-571, 2004. https://doi.org/10.1016/j.rcim.2004.07.007
- A. Corallo, M. Lazoi and M. Lezzi, "Cybersecurity in the context of industry 4.0: A structured classification of critical assets and business impacts," Computers in industry, vol.114, pp.103165, 2020.
- N. V. Korneev, J. V. Korneeva, S. P. Yurkevichyus and G. I. Bakhturin, "An approach to risk assessment and threat prediction for complex object security based on a predicative self-configuring neural system," Symmetry, vol.14, no.1, pp.102, 2022.