KR100724490B1 - 프로그램 유출 방지를 위한 암호 보안 방법 - Google Patents

프로그램 유출 방지를 위한 암호 보안 방법 Download PDF

Info

Publication number
KR100724490B1
KR100724490B1 KR1020050058549A KR20050058549A KR100724490B1 KR 100724490 B1 KR100724490 B1 KR 100724490B1 KR 1020050058549 A KR1020050058549 A KR 1020050058549A KR 20050058549 A KR20050058549 A KR 20050058549A KR 100724490 B1 KR100724490 B1 KR 100724490B1
Authority
KR
South Korea
Prior art keywords
password
plc
program
connection
padt
Prior art date
Application number
KR1020050058549A
Other languages
English (en)
Other versions
KR20070002857A (ko
Inventor
장현우
Original Assignee
엘에스산전 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘에스산전 주식회사 filed Critical 엘에스산전 주식회사
Priority to KR1020050058549A priority Critical patent/KR100724490B1/ko
Publication of KR20070002857A publication Critical patent/KR20070002857A/ko
Application granted granted Critical
Publication of KR100724490B1 publication Critical patent/KR100724490B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Safety Devices In Control Systems (AREA)
  • Programmable Controllers (AREA)

Abstract

본 발명은 피엘씨(PLC) 및 에이치엠아이(HMI) 등과 같이 사용자가 작성한 프로그램으로 구동하는 구동장치의 프로그램을 보호하기 위해 암호를 설정한 경우 암호의 해킹을 방지하여 프로그램의 유출을 막을 수 있는 프로그램 유출 방지를 위한 암호 보안 방법에 관한 것으로, 접속장치에서 사용자에 의해 작성된 프로그램으로 구동되는 구동장치(PLC 및 HMI)로 접속을 요청하는 제1단계와; 상기 구동장치에 암호가 설정된 경우 상기 접속장치로부터 암호를 입력받는 제2단계와; 상기 구동장치에서 접속장치에서 입력된 암호와 기 설정된 암호를 비교하고, 두 암호가 일치하는 경우에만 접속장치의 접속을 허가하는 제3단계로 이루어짐으로써, 통신 선로상에 PLC에 설정된 암호가 유출되는 것을 방지하여 PLC의 프로그램이 유출되는 것을 방지할 수 있는 효과가 있다.

Description

프로그램 유출 방지를 위한 암호 보안 방법{PASSWORD SECURITY METHOD FOR PREVENTING PROGRAM OUTFLOW}
도1은 PLC 및 HMI에 접속하기 위한 일반적인 시스템 구성도.
도2는 종래 PLC 및 HMI의 프로그램 유출을 방지하기 위한 일 실시예 순서도.
도3은 본 발명에 따른 PLC 및 HMI의 프로그램 유출을 방지하기 위한 일 실시예 순서도.
본 발명은 프로그램 유출 방지를 위한 암호 보안 방법에 관한 것으로, 특히 피엘씨(PLC) 및 에이치엠아이(HMI) 등과 같이 사용자가 작성한 프로그램으로 구동하는 구동장치의 프로그램을 보호하기 위해 암호를 설정한 경우 암호의 해킹을 방지하여 프로그램의 유출을 막을 수 있는 프로그램 유출 방지를 위한 암호 보안 방법에 관한 것이다.
피엘씨(PLC : Programmable Logic Controller) 및 에이치엠아이(HMI : Human Machine Interface)는 사용자가 직접 작성한 프로그램으로 구동되는 장치로서 사용자의 프로그램은 필요에 따라 제3자에게 유출되지 않도록 암호를 설정하여 보호하 도록 되어 있다. 따라서, 암호가 설정된 PLC 및 HMI는 암호를 알지 못하는 사람에게는 접속 및 업로드가 불가능하게 설정되어 암호를 설정한 사람의 프로그램 도용 및 수정을 할 수 없도록 되어 있다.
PLC 및 HMI에 설정된 암호는 PLC에 접속하여 프로그램 작성 및 디버깅하는 소프트웨어인 PADT(Programming and Debugging Tool) 또는 작화용 에디터를 이용하여 다운로드하고, 다시 PADT 또는 작화용 에디터를 사용하여 입력한 암호가 다운로드된 암호와 서로 일치하는 경우에만 PLC 및 HMI에 접속할 수 있다.
이에 대한 일반적인 시스템 구성은 도1에 도시한 바와 같이 사용자 프로그램을 저장하고 있는 PLC 또는 HMI와 같은 사용자가 작성한 프로그램에 의해 구동되는 구동장치(10)와 상기 PLC 또는 HMI에 접속하기 위한 접속 장치(20)로 구성된다. 여기서, 접속 장치(20)로는 PADT 또는 작화용 에디터나 컴퓨터 등이 될 수 있다.
이하, 종래 암호 보안 방법에 대한 동작을 위해 구동장치를 PLC, 접속 장치를 PADT로 가정하고 설명한다.
도2는 종래 프로그램 유출 방지를 위한 PLC 접속 과정에 대한 일 실시예 순서도이다.
도2를 참고하면, PLC로부터 사용자가 작성한 프로그램을 PADT에서 다운로드하기 위해서 PADT와 PLC를 통신 케이블로 연결하고, PADT에서 PLC로 접속을 요청한다.
PLC로부터 접속 응답 신호가 수신되면 PADT는 PLC로 암호 읽기를 요청하고, PLC로부터 PLC의 암호 영역에 저장된 정보를 수신한다.
상기 수신된 암호 영역 정보로부터 PLC의 암호 설정 여부를 판단할 수 있고, 상기 판단 결과, PLC에 암호가 설정되어 있지 않은 경우에는 PLC에서 PADT의 접속을 허용하여 PLC로부터 사용자가 작성한 프로그램을 다운로드할 수 있다.
반면, 상기 판단 결과, PLC에 암호가 설정된 경우에는 상기 PLC의 암호 영역에서 읽은 암호를 저장하고, 암호를 입력하기 위한 암호 입력창(또는 다이얼로그)을 표시한다.
상기 암호 입력창이 표시되면, 사용자는 PLC에 접속하기 위해 암호를 입력하고, 사용자에 의해 입력된 암호와 상기 PLC로부터 다운로드하여 저장된 PLC의 암호를 비교하여 일치 여부를 확인한다.
사용자에 의해 입력된 암호와 PLC에 설정된 암호가 일치한 경우에는 PLC에서 PADT의 접속을 허용하여 PLC로부터 사용자가 작성한 프로그램을 다운로드할 수 있지만, 암호가 불일치하는 경우에는 암호 입력 및 암호 일치 확인 과정을 반복 수행한다.
이런 일련의 과정을 통해 암호가 설정된 PLC 및 HMI에 암호를 모르는 제3자가 접속할 수 없기 때문에 사용자가 작성한 프로그램의 외부 유출을 방지할 수 있다.
하지만, 이런 종래 방법은 다음과 같은 문제점이 있었다.
첫째, PADT에서 PLC의 암호영역을 읽을 때 외부장비(프로토콜 어낼라이저 등)를 이용하여 통신 선로상의 통신 프레임을 분석하면 PLC 및 HMI의 암호를 확인할 수 있었다.
둘째, 반복적인 암호 입력을 통해 암호를 해독할 수 있는데, 예를 들어, 컴퓨터의 프로그램 및 수동 조작을 통해 '숫자' 또는 '영문+숫자'로 구성되는 암호를 반복 입력하여 일치하는 암호를 확인할 수 있었다.
따라서, 본 발명은 상기와 같은 종래 문제점을 해결하기 위하여 창출한 것으로, PLC에 암호가 설정된 경우 PADT로부터 암호를 입력받고, 그 입력된 암호와 PLC에 설정된 암호의 암호 확인 절차를 PLC에서 수행하며 암호 불일치 회수가 기준 회수를 초과한 경우 접속을 불가함으로써, 통신 선로상에 PLC에 설정된 암호가 유출되는 것을 방지하여 PLC의 프로그램이 유출되는 것을 방지할 수 있는 프로그램 유출 방지를 위한 암호 보안 방법을 제공하는데 그 목적이 있다.
상기와 같은 목적을 달성하기 위한 본 발명은 구동장치(PLC 및 HMI)와 접속장치를 통신 케이블로 연결하고 사용자가 작성한 프로그램을 다운로드하고자 할 때 프로그램 유출 방지를 위한 암호 보안 방법에 있어서,
접속장치에서 사용자에 의해 작성된 프로그램으로 구동되는 상기 구동장치로 접속을 요청하는 제1단계와;
상기 구동장치에 암호가 설정되어있지 않은 경우 상기 접속장치의 접속을 허가하고, 상기 구동장치에 암호가 설정된 경우 상기 접속장치로부터 암호를 입력받는 제2단계와;
상기 구동장치에서 접속장치에서 입력된 암호와 기 설정된 암호를 비교하고,
상기 접속장치로부터 입력된 암호와 구동장치에 기 설정된 암호가 불일치하는 경우 접속장치의 표시창에 암호 불일치에 대한 경고메시지를 표시하고, 상기 제2단계를 다시 수행하며,
상기 제2단계가 기준 회수를 초과하면 구동장치에서 접속장치의 접속 요청을 불가하고,
두 암호가 일치하는 경우에만 접속장치의 접속을 허가하는 제3단계로 이루어진 것을 특징으로 한다.
또한, 상기 구동장치에 암호가 설정된 경우 상기 접속장치로부터 암호를 입력받는 제2단계는 구동장치에 암호가 설정된 경우 접속장치에 암호를 입력할 수 있는 암호 입력창을 표시하는 단계와; 사용자로부터 암호를 입력받는 단계와; 상기 입력된 암호 데이터를 구동장치로 출력하는 단계로 이루어진 것을 특징으로 한다.
이하, 본 발명에 대한 바람직한 실시예를 첨부한 도면을 참고하여 설명한다.
우선 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.
또한, 하기의 설명에서 구체적인 처리흐름과 같은 많은 특정 상세들은 본 발명의 보다 전반적인 이해를 제공하기 위해 나타나 있으며, 이들 특정 상세들 없이 본 발명이 실시될 수 있다는 것은 이 기술 분야에서 통상의 지식을 가진 자에게는 자명할 것이다.
본 발명은 PLC 및 HMI와 같이 사용자가 작성한 프로그램에 의해 구동되는 구동장치에서 PADT 및 작화용 에디터 등에서 사용자에 의해 입력된 암호를 수신하여 PLC 및 HMI에서 암호 확인 절차를 수행하며 사용자에 의해 입력된 암호의 불일치 회수를 한정하여 통신 선로상에 암호가 유출되는 것을 방지하는 것을 그 요지로 한다.
도3은 본 발명에 따른 프로그램 유출 방지를 위한 PADT에서의 PLC 접속 과정에 대한 일 실시예 순서도로서, PADT에서 PLC로 접속을 요청하고, PLC에 암호가 설정된 경우 PADT에서 입력한 암호를 입력받아 PLC에서 기 설정된 암호와 입력받은 암호를 비교하여 접속 가능 여부를 판단하는 것을 알 수 있다.
즉, PLC에서 PADT로부터 접속 요청이 들어오면 PLC에 암호가 설정되어 있는지 판단하고, 설정되어 있지 않은 경우에는 PADT의 접속을 허가하는 단계와, PLC에 암호가 설정되어 있는 경우에는 PADT에 암호가 설정되었음을 알리고, PADT로부터 암호를 입력받는 단계와, PLC에서 PLC에 기 설정된 암호와 PADT로부터 입력받은 암호를 비교하는 단계와, 상기 비교된 두 암호가 일치하는 경우 PADT의 접속을 허가하고, 비교된 두 암호가 불일치하는 경우 PADT로부터 암호를 재입력받는 단계와, 상기 PADT로부터 입력받은 암호의 회수가 기준 회수를 초과하는 경우 PADT의 접속을 불가하는 단계로 이루어진다. 여기서, 암호 입력 기준 회수는 기기의 특성을 감안하여 10~1000회 정도가 적당하다.
그럼, 본 발명에 대한 동작을 설명하면 다음과 같다.
먼저, PADT와 PLC를 통신 케이블로 연결하고, PADT에서 PLC로 접속을 요청하면, PLC에서는 PLC에 암호가 설정되어 있는지 판단하고, 설정 여부를 PADT로 출력한다. 즉, PLC에 암호가 설정되지 않은 경우에는 암호가 설정되지 않았다는 응답을 PADT에 출력하고, PADT는 암호 입력창을 표시할 필요없이 PLC 접속 허가에 의해 접속된다.
반면, PLC에 암호가 설정되어 있는 경우에는 암호가 설정되었다는 응답을 PADT로 출력하고, PADT에서 사용자로부터 암호를 입력받기 위해 암호 입력창을 표시하고, 사용자로부터 PLC에 접속하기 위한 암호를 입력받는다.
사용자로부터 암호가 입력되면, 그 입력된 암호 데이터가 유선 케이블을 통해 PLC로 출력되고, PLC에서 사용자에 의해 입력된 암호와 기 설정된 암호의 일치 여부를 판단한다.
상기 판단 결과, 사용자의 입력 암호와 PLC의 암호가 일치하는 경우에는 PLC 를 접속 허용 상태로 만들어 PADT를 접속시키고, 사용자의 입력 암호와 PLC의 암호가 불일치하는 경우에는 암호 불일치에 대한 정보를 PADT로 출력한다.
PADT에서는 암호 불일치에 대한 정보를 입력받아 이에 대한 메시지 예를 들어, '암호 불일치' 경고메시지를 표시하고, 사용자로부터 암호를 재입력받기 위해 암호 입력창을 다시 표시한다. 그리고, 상술한 PLC의 암호 설정 상태에서의 과정, 즉, PADT에 암호 입력창을 표시하고 사용자로부터 암호를 입력받으며 PLC에서 상기 입력된 암호와 기 설정된 암호를 비교하는 과정이 기준 회수를 초과하는 경우에는 PADT로 접속 불가능에 대한 정보를 출력하고, PADT로부터 암호 확인 요청을 받지 않는다. 여기서, 사용자의 암호 입력에 대한 기준 회수 초과 여부는 PLC에서 PADT로부터 입력된 암호 불일치 회수를 저장하고, 그 저장된 불일치 회수와 기준 회수의 비교를 통해 이루어진다.
이와 같이 본 발명은 종래 PADT에서 PLC의 암호 정보를 수신하고, PADT에서 암호 확인 절차 과정을 수행하는 것과는 달리 PLC에서 암호 확인 절차를 수행하기 때문에 통신 선로상에 PLC에 설정된 암호가 유출되는 것을 방지할 수 있고, 따라서 PLC에 설정된 암호의 해킹을 방지할 수 있다.
상기에서 상세히 설명한 바와 같이 본 발명은 PLC에 암호가 설정된 경우 PADT로부터 암호를 입력받고, 그 입력된 암호와 PLC에 설정된 암호의 암호 확인 절차를 PLC에서 수행하며 암호 불일치 회수가 기준 회수를 초과한 경우 접속을 불가함으로써, 통신 선로상에 PLC에 설정된 암호가 유출되는 것을 방지하여 PLC의 프로 그램이 유출되는 것을 방지할 수 있는 효과가 있다.

Claims (4)

  1. 구동장치(PLC 및 HMI)와 접속장치를 통신 케이블로 연결하고 사용자가 작성한 프로그램을 다운로드하고자 할 때 프로그램 유출 방지를 위한 암호 보안 방법에 있어서,
    접속장치에서 사용자에 의해 작성된 프로그램으로 구동되는 상기 구동장치로 접속을 요청하는 제1단계와;
    상기 구동장치에 암호가 설정되어있지 않은 경우 상기 접속장치의 접속을 허가하고, 상기 구동장치에 암호가 설정된 경우 상기 접속장치로부터 암호를 입력받는 제2단계와;
    상기 구동장치에서 접속장치에서 입력된 암호와 기 설정된 암호를 비교하고,
    상기 접속장치로부터 입력된 암호와 구동장치에 기 설정된 암호가 불일치하는 경우 접속장치의 표시창에 암호 불일치에 대한 경고메시지를 표시하고, 상기 제2단계를 다시 수행하며,
    상기 제2단계가 기준 회수를 초과하면 구동장치에서 접속장치의 접속 요청을 불가하고,
    두 암호가 일치하는 경우에만 접속장치의 접속을 허가하는 제3단계로 이루어진 것을 특징으로 하는 프로그램 유출 방지를 위한 암호 보안 방법.
  2. 삭제
  3. 삭제
  4. 삭제
KR1020050058549A 2005-06-30 2005-06-30 프로그램 유출 방지를 위한 암호 보안 방법 KR100724490B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050058549A KR100724490B1 (ko) 2005-06-30 2005-06-30 프로그램 유출 방지를 위한 암호 보안 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050058549A KR100724490B1 (ko) 2005-06-30 2005-06-30 프로그램 유출 방지를 위한 암호 보안 방법

Publications (2)

Publication Number Publication Date
KR20070002857A KR20070002857A (ko) 2007-01-05
KR100724490B1 true KR100724490B1 (ko) 2007-06-04

Family

ID=37869789

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050058549A KR100724490B1 (ko) 2005-06-30 2005-06-30 프로그램 유출 방지를 위한 암호 보안 방법

Country Status (1)

Country Link
KR (1) KR100724490B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5900143B2 (ja) * 2012-05-15 2016-04-06 富士電機株式会社 制御システム、制御装置及びプログラム実行制御方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010032465A (ko) * 1997-11-26 2001-04-25 쥴리 와이. 마-스피놀라 위조 방지를 갖는 보안 메모리
KR20040020364A (ko) * 2002-08-30 2004-03-09 에스케이텔레텍주식회사 사용자 확인을 위한 이동통신 단말기 및 그 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010032465A (ko) * 1997-11-26 2001-04-25 쥴리 와이. 마-스피놀라 위조 방지를 갖는 보안 메모리
KR20040020364A (ko) * 2002-08-30 2004-03-09 에스케이텔레텍주식회사 사용자 확인을 위한 이동통신 단말기 및 그 방법

Also Published As

Publication number Publication date
KR20070002857A (ko) 2007-01-05

Similar Documents

Publication Publication Date Title
KR20150108865A (ko) 원타임 패스워드의 사용을 보안하기 위한 기술
JP5139070B2 (ja) Iec61508sil1から3またはen954−1カテゴリー1から4による安全なパラメータ化の方法および装置
US20060080537A1 (en) Illegal analysis / falsification preventing system
US7600166B1 (en) Method and system for providing trusted access to a JTAG scan interface in a microprocessor
KR101016076B1 (ko) 프로그래머블 표시기 및 제어 시스템
EP3036928B1 (en) Mobile device authentication
CN108376290B (zh) 一种金融自助设备维护的控制方法、装置及服务器
CN109597633B (zh) 软件管理系统、软件更新装置、软件更新方法以及存储介质
CN103813334A (zh) 权限控制方法和权限控制装置
US5940506A (en) Method of using a hand-held device to protect information stored in a computer system
JP2002099512A (ja) プロセス制御システムとそのセキュリティシステムおよび方法並びにそのソフトウェアシステム
US20080201582A1 (en) Method for Setting an Electrical Field Device
WO2007125911A1 (ja) データ処理装置、方法、プログラム、集積回路、プログラム生成装置
US20100031046A1 (en) Method for Authorizing Access to at Least One Automation Component of a Technical System
JP4242847B2 (ja) スクリーンセーバ表示方法及び情報処理システム
CN107004092A (zh) 针对网络和脆弱性扫描仪的控制设备和方法
US10747856B2 (en) Setting apparatus, setting method, storage medium, and terminal apparatus
CN107688756B (zh) 硬盘控制方法、设备及可读存储介质
KR100724490B1 (ko) 프로그램 유출 방지를 위한 암호 보안 방법
CN101206469A (zh) 用于设定数值控制装置的软件选项的系统及设定方法
CN105933503A (zh) 一种信息处理方法和电子设备
US10803163B2 (en) Method of modular verification of a configuration of a device
CN106575467B (zh) 医疗设备数据传送系统及方法
KR20200023909A (ko) 색각 이상자를 위한 보안 방법 및 보안 장치
CN110378110A (zh) 软件加密处理方法、软件验证方法及装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120327

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20130222

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20160401

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170822

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180313

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190507

Year of fee payment: 13