1 |
1
차량 내 구비되는 적어도 하나의 제어부가 상기 차량의 내부 네트워크를 통해 적어도 하나의 차량용 데이터를 송수신하는 차량용 데이터의 인증 및 획득 방법에 있어서,게이트웨이제어부가 메시지의 인증에 사용되는 비밀키 및 키 암호화에 사용되는 그룹키를 생성하여 상기 제어부로 송신하고, 상기 제어부가 상기 게이트웨이제어부로부터 수신된 상기 비밀키 및 상기 그룹키를 저장하는 단계; 상기 게이트웨이제어부가 그룹세션키를 생성하여 상기 제어부로 송신하고, 상기 제어부가 상기 게이트웨이제어부로부터 수신된 상기 그룹세션키를 저장하는 단계;상기 제어부가 송신하고자 하는 메시지의 인증에 필요한 메시지인증코드(Message Authentication Code)를 생성하고, 송신하고자 하는 메시지 및 상기 메시지인증코드를 상기 그룹세션키로 암호화하며, 송신하고자 하는 패킷 내 상기 암호화된 메시지 및 상기 암호화된 메시지인증코드를 포함시켜 네트워크로 송신하는 단계; 및상기 패킷을 수신한 제어부는 상기 패킷 내 포함된 상기 암호화된 메시지 및 상기 암호화된 메시지인증코드를 복호화하고, 상기 메시지에 대한 처리를 결정하는 해쉬체인(hash chain)값의 수신 여부에 따라 상기 복호화된 메시지인증코드를 인증함으로써, 상기 메시지를 획득하는 단계를 포함하는 차량용 데이터의 인증 및 획득 방법
|
2 |
2
제 1 항에 있어서,상기 비밀키 및 상기 그룹키를 저장하는 단계 수행 전,상기 게이트웨이제어부가 인증서를 상기 제어부에 전송하고, 상기 제어부는 수신된 인증서를 저장하는 단계를 더 포함하는 것을 특징으로 하는 차량용 데이터의 인증 및 획득 방법
|
3 |
3
제 1 항에 있어서,상기 비밀키 및 상기 그룹키를 저장하는 단계는,상기 게이트웨이제어부 및 상기 제어부가 상기 메시지에 대한 인증을 나타내는 카운터의 초기값을 저장하는 단계를 더 포함하는 것을 특징으로 하는 차량용 데이터의 인증 및 획득 방법
|
4 |
4
제 1 항에 있어서,상기 네트워크는,CAN(Controller Area Network) 프로토콜을 사용하며, 브로드캐스트(boradcast) 통신함으로써, 상기 제어부가 상기 메시지를 네트워크로 송신할 경우, 상기 네트워크에 연결된 게이트웨이제어부를 포함하는 모든 제어부로 상기 메시지가 송신되는 것을 특징으로 하는 차량용 데이터의 인증 및 획득 방법
|
5 |
5
제 1 항에 있어서,상기 메시지인증코드는 상기 패킷 내의 CRC필드 및 확장필드에 포함되는 것을 특징으로 하는 차량용 데이터의 인증 및 획득 방법
|
6 |
6
제 1 항에 있어서,상기 그룹세션키를 저장하는 단계는,상기 게이트웨이제어부가 상기 해쉬체인값 및 상기 그룹세션키를 생성하여 상기 그룹키로 암호화하는 단계;상기 게이트웨이제어부가 상기 암호화된 해쉬체인값 및 상기 암호화된 그룹세션키를 자신의 개인키로 서명하고, 상기 서명된 해쉬체인값 및 상기 서명된 그룹세션키를 상기 제어부로 송신하는 단계; 및상기 제어부가 상기 게이트웨이제어부로부터 수신된 상기 서명된 해쉬체인값 및 상기 서명된 그룹세션키를 공개키를 통해 검증하며, 상기 검증된 해쉬체인값 및 상기 검증된 그룹세션키를 상기 그룹키를 통해 복호화함으로써, 상기 복호화된 해쉬체인값 및 상기 복호화된 그룹세션키를 획득하여 저장하는 단계를 포함하는 차량용 데이터의 인증 및 획득 방법
|
7 |
7
제 6 항에 있어서,상기 게이트웨이제어부는 상기 그룹세션키 및 상기 해쉬체인값을 소정의 키 업데이트 주기에 따라 갱신하며, 갱신된 상기 그룹세션키 및 상기 해쉬체인값을 상기 그룹키를 통해 암호화하여 네트워크로 송신하는 것을 특징으로 하는 차량용 데이터의 인증 및 획득 방법
|
8 |
8
제 1 항에 있어서,상기 네트워크로 송신하는 단계는,메시지를 송신하고자 하는 상기 제어부가 메시지의 인증을 나타내는 카운터값과 상기 비밀키 간에 배타적연산을 수행하여 인증키를 생성하는 단계;메시지를 송신하고자 하는 상기 제어부가 상기 인증키를 이용하여 송신하고자 하는 메시지의 메시지인증코드를 생성하는 단계;메시지를 송신하고자 하는 상기 제어부가 상기 메시지 및 상기 메시지인증코드를 상기 그룹세션키로 암호화하는 단계; 및메시지를 송신하고자 하는 상기 제어부가 상기 암호화된 메시지 및 상기 암호화된 메시지인증코드를 송신하고자 하는 패킷 내에 포함하여 네트워크로 송신하는 단계를 포함하는 것을 특징으로 하는 차량용 데이터의 인증 및 획득 방법
|
9 |
9
제 8 항에 있어서,상기 카운터값은,게이트웨이제어부가 상기 인증키를 사용하여 메시지 인증에 성공할 때마다 1이 증가하고, 제어부가 상기 인증키를 생성할 때마다 1이 증가하는 것을 특징으로 하는 차량용 데이터의 인증 및 획득 방법
|
10 |
10
제 1 항에 있어서,상기 메시지를 획득하는 단계는,상기 패킷을 수신한 제어부가 상기 패킷 내에 존재하는 상기 암호화된 메시지 및 상기 암호화된 메시지인증코드를 상기 그룹세션키를 이용하여 복호화하고, 상기 게이트웨이제어부로부터 소정의 시간만큼 상기 해쉬체인값이 수신되도록 대기하는 단계;상기 게이트웨이제어부는 수신한 패킷 내에 존재하는 상기 암호화된 메시지 및 상기 암호화된 메시지인증코드를 상기 그룹세션키를 이용하여 복호화하고, 메시지의 인증을 나타내는 카운터값과 상기 비밀키 간에 배타적연산을 수행하여 인증키를 생성하며, 상기 인증키를 통해 상기 메시지인증코드를 인증하는 단계; 및상기 패킷을 수신한 제어부는 상기 게이트웨이제어부로부터 소정의 시간만큼 상기 해쉬체인값의 수신이 없을 경우 상기 메시지를 인증함으로써, 상기 메시지를 획득하는 단계를 포함하는 차량용 데이터의 인증 및 획득 방법
|
11 |
11
제 10 항에 있어서,상기 게이트웨이제어부가 상기 인증키를 통해 상기 메시지인증코드의 인증에 실패할 경우 상기 해쉬체인값을 상기 그룹세션키로 암호화하여 네트워크로 송신하는 단계;상기 패킷을 수신한 제어부가 상기 게이트웨이제어부로부터 수신한 암호화된 해쉬체인값을 그룹세션키로 복호화하는 단계;상기 패킷을 수신한 제어부가 상기 메시지를 획득하는 단계 이전에 저장된 해쉬체인값과 상기 메시지를 획득하는 단계에서 수신된 해쉬체인값을 상호비교하여 동일 여부를 확인하는 단계; 및상기 패킷을 수신한 제어부가 상기 동일 여부 확인결과 동일하다고 판단된 경우 상기 메시지를 처리하지 않는 단계를 더 포함하는 것을 특징으로 하는 차량용 데이터의 인증 및 획득 방법
|