KR20030048464A - Data scrambling system for a shared transmission media - Google Patents

Data scrambling system for a shared transmission media Download PDF

Info

Publication number
KR20030048464A
KR20030048464A KR10-2003-7006281A KR20037006281A KR20030048464A KR 20030048464 A KR20030048464 A KR 20030048464A KR 20037006281 A KR20037006281 A KR 20037006281A KR 20030048464 A KR20030048464 A KR 20030048464A
Authority
KR
South Korea
Prior art keywords
client modem
key
communication
seed
server
Prior art date
Application number
KR10-2003-7006281A
Other languages
Korean (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 코우액스미디어, 인크.
Publication of KR20030048464A publication Critical patent/KR20030048464A/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42676Internal components of the client ; Characteristics thereof for modulating an analogue carrier signal to encode digital information or demodulating it to decode digital information, e.g. ADSL or cable modem
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4408Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0023Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
    • H04L1/0026Transmission of channel quality indication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23895Multiplex stream processing, e.g. multiplex stream encrypting involving multiplex stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • H04N21/42684Client identification by a unique number or address, e.g. serial number, MAC address, socket ID
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • H04N21/63775Control signals issued by the client directed to the server or network components directed to server for uploading keys, e.g. for a client to communicate its public key to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network

Abstract

본 발명은 공유된 통신 매체(50) 상에서 서버(36) 및 특정 클라이언트 모뎀(70) 간의 통신을 위한 추가적인 보안을 제공하는 방법에 관한 것이다. 상기 방법은 스크램블링된 키를 포함하는 통신을 넘겨서 후속 메시지를 스크램블링하기 위한 스크램블링 시드를 형성하는데 사용되도록 한다. 바람직한 실시예에서, 서버(36) 및 클라이언트 모뎀(70)은 서버(36) 및 클라이언트 모뎀(70) 간의 통신을 위하여 사용되도록 키를 생성하고 넘겨서 다이나믹 이중 키 스크램블링 시스템을 구현한다.The present invention is directed to a method for providing additional security for communication between a server 36 and a particular client modem 70 on a shared communication medium 50. The method is then passed over a communication comprising the scrambled key to be used to form a scrambling seed for scrambling subsequent messages. In a preferred embodiment, server 36 and client modem 70 generate and hand over a key to be used for communication between server 36 and client modem 70 to implement a dynamic dual key scrambling system.

Description

공유된 전송 매체용 데이터 스크램블링 시스템{DATA SCRAMBLING SYSTEM FOR A SHARED TRANSMISSION MEDIA}DATA SCRAMBLING SYSTEM FOR A SHARED TRANSMISSION MEDIA}

[관련 출원에 대한 교차 참조][CROSS REFERENCE TO RELATED APPLICATION]

본 출원은 미국 출원 번호 제60/246,684호로 2000년 11월 8일 출원된 가출원에 대한 우선권을 주장한다. 본 출원은 일반 양수인인 "coaXmedia"(사)에 양도된 관련 출원에 기술된 개념을 확장한다. 상기 출원(이하 "'845 출원"이라 한다)은 PCT/US01/09845호이고 제목은 "수동적인 다중점 네트워크를 통한 모뎀 통신용 자동 분배 이득 제어를 위한 구조 및 방법(Architecture and Method for Automatic Distributed Gain Control for Modem Communications Over Passive Multipoint Networks)"이며 2001년 10월 11일에 WO 01/76142로 공개되었다.This application claims priority to provisional applications filed November 8, 2000, US Application No. 60 / 246,684. This application extends the concepts described in the related application assigned to the general assignee "coaXmedia". The application (hereinafter referred to as "'845 application") is PCT / US01 / 09845 and entitled "Architecture and Method for Automatic Distributed Gain Control for Modem Communication over Passive Multipoint Networks." for Modem Communications Over Passive Multipoint Networks, "published on WO 11/76142 on October 11, 2001.

일반 양수인 "coaXmedia"(사)에 의한 관련 출원은 미국 출원번호 09/908,754호이고, 상기 출원은 "수동 동축 케이블 분배와 같은 공유 전송매체에서의 전화통신, 지연시간 감응 데이터, 베스트 에포츠 데이터 및 비디오 스트림용 우선순위 패킷 전송 시스템(Priorty Packet Transmission System For Telephony, Latency Sensitive Data, Best Efforts Data and Video Streams in a Shared Transmission Media Such as Passive Coax Distribution)"이며, 2000년 7월 21일에 출원된 미국 출원번호 60/219,886호 가출원에 기초한다.The related application by general assignee "coaXmedia" is U.S. Application No. 09 / 908,754, which discloses "Telephony, latency sensitive data, best effort data and Priority Packet Transmission System For Telephony, Latency Sensitive Data, Best Efforts Data and Video Streams in a Shared Transmission Media Such as Passive Coax Distribution, "US, filed July 21, 2000. Based on provisional application No. 60 / 219,886.

본 출원은 이미 출원된 출원보다 향상된 점을 보여준다. 따라서 선행 출원과 본 출원의 내용 및 도면간에 모순되는 점이 존재하고, 당연히 본 출원의 내용이 더 우월하다.This application shows an improvement over the already filed application. Therefore, there is a contradiction between the preceding application and the content and drawings of the present application, and of course the content of the present application is superior.

독자의 편의를 위해, 본 발명 분야에서 사용되는 다양한 약어 및 다른 용어를 용어집으로 하여 내용 말미에 정의한다. 발명 시스템의 동작을 정의하기 위하여 본 출원에 의하여 사용되는 다른 용어는 명세서를 통하여 정의되어 있다. 독자의 편의를 위하여, 출원인은 다수의 주제 제목을 부가하여 본 명세서의 내부구조를 명확하게 하고, 특정한 논의의 위치선정을 돕는다. 이러한 주제 제목은 단지 편의를 위한 것이고 그 특정한 주제 안에 기재된 문구에 한정하려는 것은 아니다.For the convenience of the reader, various abbreviations and other terms used in the present invention are defined at the end of the contents as glossaries. Other terms used by the present application to define the operation of the inventive system are defined throughout the specification. For the convenience of the reader, Applicants add a number of subject headings to clarify the internal structure of the present specification and to assist in locating specific discussions. These subject headings are for convenience only and are not intended to be limited to the statements in that particular subject.

설명을 보다 명확하게 하기 위하여, 컴포넌트(component)를 위한 전문용어가 사용되었다. 개시된 발명 내에서 어떠한 목적을 수행하기 위하여 적합한 컴포넌트용 특정 용어의 사용은 같은 목적을 달성하기 위하여 사용하는 모든 기술적 등가물들을 포함하는 것으로 해석되어야 하는데, 이것은 명명된 컴포넌트 또는 다른 컴포넌트의 내부 작동 원리가 같은지 여부에 관계없다. 후술하는 발명의 상세한 설명 또는 청구의 범위에서 명백하게 제한되지 않는 한, 상기한 바와 같이 명확성을 위한 한정은 명명된 컴포넌트로 명세서의 범위를 제한하는 것으로 잘못 해석되어서는 안된다.For clarity, the terminology for components is used. The use of specific terms for a component that is suitable for the purpose of carrying out any object within the disclosed invention is to be construed as including all technical equivalents used to achieve the same purpose, whether the internal working principle of the named component or other component is the same. It doesn't matter. Unless expressly limited by the following detailed description or claims, limitations for clarity as described above should not be misinterpreted as limiting the scope of the specification to named components.

본 발명은 데이터 통신에 관한 것이다. 더 구체적으로는, 본 발명은 허브-서버(hub-server) 및 둘 이상의 클라이언트 모뎀 세트(client modem set) 간의 업스트림 및 다운스트림 데이터 통신용 분기 동축 분배 시스템(branch coaxdistribution system) 및 트리의 사용을 어드레싱하는 데이터 통신 분야에서 계속 향상되고 있는 것들 중 하나이다. 바람직하게는, 클라이언트 모뎀들은 랩탑 및 트리-가지 네트워크(tree and branch network) 사이에서 플러그 앤 플레이 연결 또는 다른 쉬운 연결이 가능하도록 하는 것이 좋다. 트리-가지 네트워크는 바람직하게는 인터넷에 연결되는 것이 좋다. 따라서, 본 발명은 호텔 또는 멀티플 드웰링 유니트(multiple dwelling unit; MDU) 또는 이와 유사한 빌딩에서 현존하는 동축 텔레비젼 네트워크를 통하여 인터넷에 플러그 앤 플레이 액세스를 하도록 사용할 수 있다.The present invention relates to data communication. More specifically, the present invention addresses the use of branch coaxdistribution systems and trees for upstream and downstream data communications between a hub-server and two or more client modem sets. One of the things that continues to improve in the field of data communications. Preferably, the client modems should allow for a plug and play connection or other easy connection between a laptop and a tree and branch network. The tree branch network is preferably connected to the Internet. Thus, the present invention can be used for plug and play access to the Internet through existing coaxial television networks in hotels or multiple dwelling units (MDUs) or similar buildings.

상기 '845 출원은 퍼스널 컴퓨터와 같은 디바이스가 호텔, MDU 또는 이와 유사한 빌딩에서 기존의 트리-가지 동축 네트워크에 연결된 특수한 모뎀에 연결되도록 허용하는 시스템을 설명한다. 상기 시스템은 케이블 TV용으로 사용된 범위외의 2 가지 범위 중 하나의 주파수 범위 대역폭을 사용한다. 따라서, 이 시스템은 다운스트림 채널용 주파수 범위 및 업스트림 채널용 주파수 범위를 가질 것이다. 이것은 트리-가지 네트워크이므로, 다운스트림을 향하는 모든 통신은, 모든 모뎀이 통신을 통해 정보를 받으므로 반드시 어떤 모뎀 디바이스가 어드레싱되고 있는지를 확인해야 한다. 반면, 개별적인 많은 모뎀으로부터 네트워크의 업스트림 말단부로의 통신은, 하나의 모뎀 디바이스만이 어느 시점에서 업스트림 데이터를 송신하여 버스 쟁탈(bus contention)을 피할 수 있도록, 반드시 제어해야만 한다. 상기 참조 출원에서 사용된 제어 방법은 폴링 및 응답 모델(polling and response model)에 기초하고 있다.The '845 application describes a system that allows devices such as personal computers to be connected to a special modem connected to an existing tree-branch coaxial network in a hotel, MDU or similar building. The system uses a frequency range bandwidth in one of two ranges outside the range used for cable TV. Thus, the system will have a frequency range for the downstream channel and a frequency range for the upstream channel. Since this is a tree-branched network, all communications going downstream must identify which modem device is being addressed, since all modems receive information through the communication. On the other hand, communication from many individual modems to the upstream end of the network must be controlled so that only one modem device can transmit upstream data at some point to avoid bus contention. The control method used in the reference application is based on a polling and response model.

상기 '845 출원 및 본 발명에 의하여 어드레스싱된 상황은 도 1에 개괄적으로 나타나 있다. 도 1은 다시 컴포넌트의 4개 클러스터(cluster)로 나누어질 수 있다. 제1 클러스터는 케이블 TV의 전파중계소 장비(10)이다. 제2 클러스터는 광동축 혼합망(Hybrid Fiber-coax; HFC) 분배 네트워크(20)이다. 제3 클러스터는 구내 동축 분배 장비(30)이고 이것은 MDU 또는 호텔과 같은 이와 유사한 상태에서도 존재할 수 있다. 최종 클러스터는 사용자 방에 있는 장비 클러스터(40)이다. 클러스터(30 및 40)는 본 발명의 구성요소들을 포함한다. 산업계의 관례에 따라, 케이블 TV 전파중계소 및 인터넷은 케이블 TV 및 IP 데이터 각각에 대하여 도 1의 업스트림 말단부에 위치한다. 사용자의 방에 있는 텔레비젼 세트 또는 컴퓨터는 다운스트림 점이다. 업스트림 데이터 전송은 업스트림 말단부를 향하여 올라가고 다운스트림 데이터 전송은 다운스트림 말단부를 향하여 내려간다. 따라서, 데이터 패스 상의 컴포넌트는 업스트림 말단부로부터 다운스트림 데이터 전송을 받고, 다운스트림 말단부로부터 업스트림 데이터 전송을 받는다.The situation addressed by the '845 application and the present invention is outlined in FIG. 1 can be further divided into four clusters of components. The first cluster is the head end equipment 10 of the cable TV. The second cluster is a hybrid fiber-coax (HFC) distribution network 20. The third cluster is the premises coaxial distribution equipment 30 and it may exist in a similar state such as an MDU or a hotel. The final cluster is the equipment cluster 40 in the user's room. Clusters 30 and 40 contain the components of the present invention. In accordance with industry practice, cable TV headends and the Internet are located at the upstream end of FIG. 1 for cable TV and IP data, respectively. The TV set or computer in the user's room is a downstream point. The upstream data transmission goes up towards the upstream end and the downstream data transmission goes down towards the downstream end. Thus, the component on the data path receives downstream data transmissions from the upstream end and upstream data transmissions from the downstream end.

케이블 TV 전파중계소 장비(10)에 대하여는 참조된 '845 출원에서 설명하였으므로 여기에서 반복할 필요가 없다. 일반적으로, 케이블 TV 신호는 HFC 분배 네트워크(20)에 제공된다. 인터넷(15)으로부터의 디지털 통신 신호는 케이블 TV 전파중계소 장비(10)을 통하여 HFC 분배 네트워크(20)로 이동한다. 케이블 TV 전파중계소에서 선택된 구성요소는 본 발명을 위한 예시 일뿐 어떠한 제한 또는 필수 구성요소도 되지 않는다.The cable TV head-end equipment 10 has been described in the referenced '845 application and need not be repeated here. In general, the cable TV signal is provided to the HFC distribution network 20. Digital communication signals from the Internet 15 travel through the cable TV headend equipment 10 to the HFC distribution network 20. The components selected at the cable TV headend are examples for the invention only and do not have any limitations or mandatory components.

클러스터(30)에서, HFC 분배 네트워크(20)로부터 들어오는 신호는케이블(31) 상에서 접합자 디바이스(32)로 운반된다. 접합자 디바이스(32)는 TV 채널 증폭기(33; TV Channel Amplifier)의 입력에 연결되어 있다. TV 채널 증폭기(33)의 출력은 제2 접합자 디바이스(34)로 넘겨지고 그 후 하나 이상의 접합자 디바이스로 넘겨진다. 일련의 TV 동축 소켓(TV coax Receptacle; 도시되지 않음)에서 끝나는 트리-가지 분배 네트워크(50)를 형성하는 하나 이상의 접합자 디바이스의 케이블 TV 신호를 분배하기에 적합한 트리-가지 네트워크용 기술은 상기 기술에 익숙한 당업자에 잘 알려져 있다. 따라서, 불필요한 혼잡을 피하기 위하여 트리-가지 네트워크(50)는 단지 몇 개의 접합자 디바이스와 접속 케이블로만 나타냈을 뿐, 트리-가지 네트워크용 컴포넌트의 풀-세트는 아니다.In the cluster 30, the signal coming from the HFC distribution network 20 is carried on the cable 31 to the splicer device 32. The junction device 32 is connected to the input of a TV channel amplifier 33. The output of the TV channel amplifier 33 is passed to the second splicer device 34 and then to one or more splicer devices. Techniques for tree-branch networks suitable for distributing cable TV signals of one or more splicer devices forming a tree-branch distribution network 50 ending in a series of TV coax receptacles (not shown) are described in the above description. It is well known to those skilled in the art. Thus, in order to avoid unnecessary congestion, the tree branch network 50 has only been shown with a few junction devices and connecting cables, and is not a full set of components for the tree branch network.

접합자 디바이스(32 및 34)는 TV 채널 앰프(33) 주위에 바이패스(bypass)를 형성한다. 상기 바이패스 루프는 업스트림 말단부에 케이블 모뎀(35)을 갖고 바이패스 루프의 다운스트림 말단부에 데이터 허브(36; "허브" 또는 "서버"라고 부르기도 한다)를 갖는다. 상기 '845 출원에서 상술한 것처럼, 서버(36)는 RF 모뎀(37), 프로토콜 컨버터(38) 및 NIC 유닛(39)과 같은 다수의 컴포넌트로 구성된다. 상기 컴포넌트의 동작은 '845 출원에서 설명하였고, 여기에서 반복할 필요가 없다. 동축 트리-가지 네트워크(50)는 트리-가지네트워크의 전파중계소(42)를 분할자 디바이스 세트(set of splitter device)에 연결한다.The junction devices 32 and 34 form a bypass around the TV channel amplifier 33. The bypass loop has a cable modem 35 at the upstream end and a data hub 36 (also called a "hub" or "server") at the downstream end of the bypass loop. As described above in the '845 application, server 36 is comprised of a number of components, such as RF modem 37, protocol converter 38, and NIC unit 39. The operation of the component is described in the '845 application and need not be repeated here. Coaxial tree-branch network 50 connects head-end 42 of the tree-branch network to a set of splitter devices.

분할 디바이스의 일부 세트는 도 1에 분할자(52, 54 및 56)로 나타나 있다. 따라서 전파 중계소(42)의 신호는 클라이언트 모뎀 디바이스(60, 62, 64, 66, 68 및 70)로의 입력에 존재한다. 클라이언트 모뎀 디바이스 상의 출력 잭(outputjack)은 퍼스널 컴퓨터(72, 81, 87 및 92), 전화(74, 77, 78, 82, 85 및 88)와 같은 디바이스 및 텔레비젼(71, 75, 80, 84, 86 및 90)의 연결을 허용한다. 두 개의 전화(77 및 78)는 모뎀 디바이스(64)에 연결된다는 것을 유의해야 한다. 상기 두 개의 전화는 각각 자기 자신의 전화 포트에 연결된다. 케이블 TV 신호는 모뎀 디바이스 내에서 처리될 필요가 없으므로, 상기 신호는 모뎀 디바이스 상의 출력으로부터라기보다는 모뎀 디바이스의 업스트림에 위치한 외부 다이플렉서(external diplexer)로부터 취할 수 있다. 구성요소(94 및 96)는 아래에서 논의될 것임을 유의하라.Some sets of splitting devices are shown as dividers 52, 54, and 56 in FIG. 1. The signal from headend 42 is thus present at the input to client modem devices 60, 62, 64, 66, 68, and 70. The output jacks on the client modem device are devices such as personal computers 72, 81, 87 and 92, telephones 74, 77, 78, 82, 85 and 88 and televisions 71, 75, 80, 84, 86 and 90) are allowed. Note that two phones 77 and 78 are connected to modem device 64. The two phones are each connected to their own phone port. Since the cable TV signal does not need to be processed within the modem device, the signal may be taken from an external diplexer located upstream of the modem device rather than from an output on the modem device. Note that components 94 and 96 will be discussed below.

상기 '845 출원은 RF 동축 전송 시스템을 포함하는데, 여기에서 모든 다운스트림으로 ["42"로부터 클라이언트 모뎀 디바이스(60, 62, 64, 66, 68 및 70)로]흐르는 정보는 DVB/MPEG-2 구조에 따라 포맷되어 멀티미디어 응용 프로그램의 이용을 도모한다.The '845 application includes an RF coaxial transmission system, where the information flowing from all the downstream [“42” to client modem devices 60, 62, 64, 66, 68 and 70] is DVB / MPEG-2. Formatted according to the structure to facilitate the use of multimedia applications.

본 발명의 개념 설명을 돕기 위해, 특정한 "coaXmedia" 시스템에서 다운스트림 및 업스트림 전송에 사용한 바람직한 포맷을 도 2에 나타내고 있다. 데이터 구조의 상세는 예제에 포함되어 있고, 이것은 본 발명의 필수적인 형태를 대표하는 것은 아니다.To help illustrate the concept of the present invention, the preferred format used for downstream and upstream transmission in a particular " coaXmedia " system is shown in FIG. The details of the data structure are included in the examples, which do not represent an essential form of the invention.

다운스트림 전송 프레임(100)은 204-바이트 MPEG/DVB 프레임이다. 상기 다운스트림 전송 프레임(100)은 [프레임 또는 패킷 시동 확인을 위한 47 hex 및 B8 hex값의(예를 들어, 멀티 프레임 확인용 반전(inverted) 47 hex)]SYNC 바이트(104), 그 뒤에 나타나는 패킷 확인(packet identification; "PID")용 MPEG2에 의하여 사용되는 2 바이트(108), 그 뒤에 나타나는 184 바이트 페이로드의 패킷 종류 확인용으로 보존된 추가적인 바이트(112) 및 16 바이트의 FEC 필드(120)로 구성된다. FEC 필드(120)의 다음 프레임에 SYNC 바이트(104)가 나타난다.The downstream transmission frame 100 is a 204-byte MPEG / DVB frame. The downstream transmission frame 100 appears after the SYNC byte 104 (of 47 hex and B8 hex values for frame or packet start-up confirmation (e.g., 47 hex for multi-frame confirmation)). 2 bytes 108 used by MPEG2 for packet identification (" PID "), followed by an additional byte 112 and 16 bytes of FEC field 120 preserved for packet type identification of the 184 byte payload that follows. It is composed of The SYNC byte 104 appears in the next frame of the FEC field 120.

하나 이상의 데이터 서브 패킷(130)에 어떠한 다운스트림 데이터(IP, 음성, 비디오 등)도 위치할 수 있다. 하나 이상의 데이터 서브 패킷은 MPEG 프레임 페이로드(116)에 운반된다. 데이터 서브 패킷의 상세한 구성은 본 발명에서 중요하지 않으나, 데이터 서브 패킷은 일반적으로 서브 패킷 헤더(134) 및 서브 패킷 페이로드(136)로 구성된다. 서브 패킷 헤더는 타겟(target) 및 여러 제어 필드의 어드레스를 포함한다. 타겟에 대하여 사용되는 어드레스는 클라이언트 모뎀의 MAC 어드레스, MAC 어드레스의 일부, 클라이언트 모뎀용 별칭, 방송 그룹 어드레스 또는 다른 형태의 어드레스가 될 수 있고, 이에 따라 상기 클라이언트 모뎀은 어떤 서브 패킷이 상기 클라이언트 모뎀에 의하여 어드레싱 되는지 인식할 수 있다. 서브 패킷 페이로드는 서브 패킷 페이로드(136) 내에서 데이터(138)의 말단부에 추가된 CRC 값(140)을 포함한다.Any downstream data (IP, voice, video, etc.) may be located in one or more data subpackets 130. One or more data subpackets are carried in the MPEG frame payload 116. The detailed configuration of the data subpackets is not important in the present invention, but the data subpackets generally consist of a subpacket header 134 and a subpacket payload 136. The sub packet header contains a target and addresses of various control fields. The address used for the target may be the MAC address of the client modem, a portion of the MAC address, an alias for the client modem, a broadcast group address, or some other form of address, whereby the client modem may have some subpackets sent to the client modem. It can recognize whether it is addressed. The subpacket payload includes a CRC value 140 added to the end of the data 138 within the subpacket payload 136.

업스트림 데이터 프레임(150)은 8 바이트 프리앰블(152; 8-byte preamble), SYNC 바이트(154) 및 데이터 패킷(160)으로 구성된다. 상기 데이터 패킷의 상세는 중요하지 않지만 데이터 패킷 헤더(166) 및 데이터 패킷 페이로드(168)로 유용하게 분할될 수 있다. 데이터 패킷 페이로드(168)는 다양한 길이를 가지며 CRC 값(170)을 포함한다. 도 1은 유휴 주기(180; idle period)를 포함한다.Upstream data frame 150 consists of an 8-byte preamble 152, a SYNC byte 154, and a data packet 160. The details of the data packet are not critical but can be usefully divided into a data packet header 166 and a data packet payload 168. The data packet payload 168 has various lengths and includes a CRC value 170. 1 includes an idle period 180.

업스트림 데이터 헤더(166)는 다양한 페이로드의 길이를 서로 통신하고 전송종류를 확인하는 제어 필드를 포함한다. "coaXmedia"에 의하여 사용된 특정 시스템은 폴링 방식(polling scheme)을 사용하여, 클라이언트 모뎀(60, 62, 64, 66, 68 및 70)이 서버(36)와의 통신용 업스트림 채널을 사용하기 위한 타임 슬롯(time slot)을 보장하게 된다. 따라서 본 시스템에서, 업스트림 통신 소스와 소스 어드레스를 동일시할 필요는 없다. 쟁탈 탐지 및 교정을 사용하여 업스트림 채널을 공유 사용하게 하는 다른 시스템들에서, 상기 업스트림 데이터 헤더(166)는 소스 어드레스를 포함할 가능성이 있다.The upstream data header 166 includes control fields for communicating the lengths of the various payloads with each other and confirming the type of transmission. The particular system used by " coaXmedia " uses a polling scheme, so that client modems 60, 62, 64, 66, 68, and 70 use time slots for using upstream channels for communication with server 36. (time slot) is guaranteed. Thus, in this system, there is no need to identify the upstream communication source and source address. In other systems that use conflict detection and correction to share the upstream channel, the upstream data header 166 is likely to include a source address.

업스트림과 다운스트림 데이터 흐름은 동시에 발생하고, 모두 단일한 주파수를 사용하여 데이터를 전송한다. 예를 들어, 서버로부터 클라이언트 모뎀으로의 다운스트림 통신은 제2 주파수 채널 상에서 운반되는 업스트림 데이터와 함께 제1 주파수 채널에 존재할 수 있다. 따라서, 제1 채널을 청취하고 제2 채널 상에서 통화하는 클라이언트 모뎀은, 제2 채널 상에서 메시지를 해독할 장비가 갖추어지지 않았으므로 다른 클라이언트 모뎀이 송신한 메시지를 해독할 수 없다.Upstream and downstream data flows occur simultaneously, and both transmit data using a single frequency. For example, downstream communication from the server to the client modem may be present in the first frequency channel with upstream data carried on the second frequency channel. Thus, a client modem listening to the first channel and making a call on the second channel cannot decrypt a message sent by another client modem because it is not equipped to decrypt the message on the second channel.

본 시스템에서 사용하도록 의도한 클라이언트 모뎀이 업스트림 채널을 청취할 수 없으며 특정 클라이언트 모뎀에 어드레싱된 다운스트림 메시지만을 청취할 수 있도록 설계되었다고 하더라도, 구매자는 데이터 통신을 보호하는 추가적인 보안 레벨을 선호한다. 상기 추가적 보호는, 클라이언트 모뎀이 상기 클라이언트 모뎀에 어드레싱 되지 않은 다운스트림 트래픽을 청취하도록 수정하거나 업스트림 또는 다운스트림 트래픽 상에서 도청하려 시도하는 인증되지 않은 장비를 사용하는 인증되지 않은 집단에 의한 시도에도 불구하고 통신의 보안을 더 강화하게 될 것이다. 문제점을 설명하기 위하여, 도 1은 분할자(54) 및 인증된 클라이언트 모뎀(70) 사이에서 트리-가지 네트워크(50)에 연결된 인증되지 않은 디바이스(94)를 포함한다.Although the client modem intended for use in the system is not capable of listening to the upstream channel and is designed to only listen to downstream messages addressed to a particular client modem, the buyer prefers an additional level of security to protect data communications. The additional protection may be achieved despite attempts by unauthorized parties using unauthorized equipment that modifies the client modem to listen to downstream traffic that is not addressed to the client modem or attempts to eavesdrop on upstream or downstream traffic. It will make the communication more secure. To illustrate the problem, FIG. 1 includes an unauthenticated device 94 connected to the tree-branch network 50 between the divider 54 and the authenticated client modem 70.

상기 연결의 실제 위치는 본 발명에서 중요하지 않다. 주요 관심사는 트리-가지 네트워크로의 어떠한 연결도 모든 연결된 컴퓨터(72, 81, 87 및 92)로의 모든 다운스트림 통신에 액세스한다는 것이다. 다행스럽게, 트리-가지 네트워크는 업스트림 통신의 전 범위에서 도청에 대항하여 동작한다. 인증되지 않은 디바이스(94)가 업스트림 채널 상에서 클라이언트 모뎀으로부터 서버(36)로의 업스트림 통신을 청취하려 시도하더라도, 트리-가지 네트워크가 평행한 가지 상에서 업스트림 신호를 감쇄시킬 것이므로 일반적인 기술로서는 도청이 어려울 것이다. 감쇠의 정도는, 전송 클라이언트 모뎀 및 상기 인증되지 않은 디바이스(94) 사이에 위치해야만 하는 분할자 디바이스의 숫자에 따라 증가한다. 따라서, 인증되지 않은 디바이스(94)는 클라이언트 모뎀(70)에서 시작되는 통신으로부터 업스트림 채널 상에서 강한 신호를 받을 수 있을지도 모르나, 클라이언트 모뎀(66)으로부터 업스트림 채널 상에서의 통신은 감쇠될 것이다. 클라이언트 모뎀(64)으로부터 업스트림 채널 상에서의 통신은 더 많이 감쇠될 것인데, 그 이유는 상기 클라이언트 모뎀은 인증되지 않은 디바이스(94)로부터 두 개의 분할자 디바이스(52 및 54)에 의하여 분리되어있기 때문이다.The actual location of the connection is not critical to the invention. The main concern is that any connection to the tree branch network accesses all downstream communications to all connected computers 72, 81, 87 and 92. Fortunately, tree-branched networks operate against eavesdropping over the full range of upstream communications. Even if an unauthorized device 94 attempts to listen for upstream communications from the client modem to the server 36 on the upstream channel, eavesdropping will be difficult as a general technique since the tree branch network will attenuate the upstream signal on parallel branches. The amount of attenuation increases with the number of divider devices that must be located between the transmitting client modem and the unauthorized device 94. Thus, the unauthorized device 94 may be able to receive a strong signal on the upstream channel from the communication originating at the client modem 70, but the communication on the upstream channel from the client modem 66 will be attenuated. Communication on the upstream channel from the client modem 64 will be more attenuated because the client modem is separated by two splitter devices 52 and 54 from the unauthorized device 94. .

상기 '845 출원은 사용자가 추가적인 보안을 갖춘 시스템을 선호한다는 것을 인식했다. 상기 '845 출원은 다른 클라이언트 모뎀이 DVB 스펙트럼 정형(DVBspectral shaping)용 다른 랜덤화 시퀀스를 사용하도록 제안함으로써 이러한 소망을 처리하였다. 다양한 클라이언트 모뎀에 의하여 사용된 랜덤화 시퀀스간의 변형은 통신을 도청하려고 시도하는 누군가에게 복잡한 측면을 추가할 것이다. 상기 '845 출원은 각 클라이언트 모뎀 및 각 방향에 대한 시퀀스 시작점은 다양할 수 있다는 교시를 포함한다. DVB 스펙트럼 정형을 초기화하는 정보 통신은 통신 보안 하에서 송신되는데, 이러한 통신 보안에는 퍼블릭 키/프라이빗 키(public key/private key) 또는 상기 기술에 능숙한 당업자에 알려진 다른 수단을 갖는 암호화된 세션 등이 있다.The '845 application recognized that the user would prefer a system with additional security. The '845 application addressed this desire by suggesting that other client modems use different randomization sequences for DVBspectral shaping. Variations between the randomization sequences used by the various client modems will add complexity to someone attempting to eavesdrop on communications. The '845 application contains the teaching that the sequence starting point for each client modem and each direction may vary. Information communications initiating DVB spectral shaping are transmitted under communications security, including encrypted sessions with public keys / private keys or other means known to those skilled in the art.

상기 '845 출원에서 제안된 방법을 구현하면, DVB 시퀀스 또는 DVB 시동점의 개별화를 허용하지 않는 대량 생산된 DVB 랜덤화 장치를 사용하는 것이 어렵게 될 것이다. 퍼블릭 키/프라이빗 키 암호화와 같은 종래의 기술을 사용하여 보안 접속을 구현하려면, 클라이언트 모뎀이 상기 간단히 암호화된 세션을 지원하기 위한 부가적인 능력을 갖는 것이 필요하다. DVB 랜덤화를 개별화하기 위하여 필요한 정보를 넘기는 암호화된 세션은 네트워크에 클라이언트 모뎀을 추가하는 프로세서 상에 지연이 일어나도록 할 것이다. 결국, 일단 클라이언트 모뎀이 상기 네트워크에 추가되면, 상기 '845 출원은 새로운 변경사항 또는 새로운 시퀀스 시작점을 랜덤화 시퀀스로 넘기지 않는다. 따라서, 특정한 클라이언트 모뎀에 대하여, 상기 DVB 랜덤화 프로세스는 초기 랜덤화 시퀀스 및/또는 시퀀스 시작점을 수신한 후 세트 시퀀스(set sequence)를 따라 계속된다.Implementing the method proposed in the '845 application will make it difficult to use a mass produced DVB randomizer that does not allow individualization of DVB sequences or DVB start points. In order to implement a secure connection using conventional techniques such as public key / private key encryption, it is necessary for the client modem to have the additional capability to support the simply encrypted session. Encrypted sessions passing the information needed to individualize DVB randomization will cause a delay on the processor adding the client modem to the network. As a result, once a client modem is added to the network, the '845 application does not pass new changes or new sequence start points to the randomization sequence. Thus, for a particular client modem, the DVB randomization process continues along the set sequence after receiving the initial randomization sequence and / or sequence start point.

본 발명의 목적은 클라이언트 및 서버간의 업스트림 및 다운스트림 데이터를운반하기 위한 추가적인 보안을 제공하는 것이다.It is an object of the present invention to provide additional security for carrying upstream and downstream data between a client and a server.

본 발명의 다른 목적은 다운스트림 채널 상에서 도청하기 위해서는 도청자가 업스트림 채널 상에서 정보에 액세스할 필요가 있도록 함으로써, 다운스트림 데이터로의 액세스를 획득하는 것을 매우 어렵게 하는 것이다.Another object of the present invention is to make it very difficult for an eavesdropper to access information on an upstream channel in order to eavesdrop on the downstream channel, thereby obtaining access to downstream data.

본 발명의 또 다른 목적은, 클라이언트 모뎀에서 요구되는 하드웨어에 별 다른 추가사항 없이 다운스트림 데이터에 액세스를 획득하는 것을 보다 어렵게 하는 것이다.Yet another object of the present invention is to make it more difficult to obtain access to downstream data without much addition to the hardware required by the client modem.

도 1은 일련의 클라이언트 모뎀 장치에 연결된 트리-가지 네트워크를 포함하는 본 발명을 사용하는 시스템에 대한 네트워크 망 형태의 개략도 - 여기서 클라이언트 모뎀 디바이스는 퍼스널 컴퓨터 및 전화와 같은 디바이스 및 텔레비젼의 조합체에 연결되어 있음.1 is a schematic diagram in the form of a network for a system using the present invention comprising a tree-branch network connected to a series of client modem devices, wherein the client modem device is connected to a combination of a television and a device such as a personal computer and a telephone; has exist.

도 2는 본 발명의 일정 실시예를 설명하기 위하여 본 명세서에 사용된 다운스트림 및 업스트림 전송 포맷을 나타낸 개략도.2 is a schematic diagram illustrating downstream and upstream transport formats used herein to describe certain embodiments of the present invention.

도 3은 바이너리 메시지의 일부를 스크램블링 및 언스크램블링(unscrambling)하는 프로세스를 보여주는 개념도.3 is a conceptual diagram illustrating a process of scrambling and unscrambling a portion of a binary message.

도 4는 표 A에 배치된 이벤트의 시퀀스에 포함된 다양한 논리적 컴포넌트를 보여주는 개념도.4 is a conceptual diagram illustrating various logical components included in the sequence of events arranged in Table A. FIG.

본 발명은 공유된 전송 매체 상에서의 통신에 추가적인 보안을 제공하는 다양한 방법을 제시하고 있다. 더 구체적으로는, 본 발명은 스크램블링된 통신에서 바람직하게 넘겨진 키에 기초한 스크램블링 시드(scrambling seed)를 사용하는 방법을 제공한다. 본 발명의 바람직한 실시예는 클라이언트 모뎀으로부터의 각 업스트림 전송에 하나의 새로운 키를 제공하고, 상기 클라이언트 모뎀으로의 각 다운스트림 전송에 하나의 새로운 키를 제공하여, 클라이언트 모뎀 및 서버 사이의 각 전송을 위한 키에 기초한 두개의 스크램블링 시드를 제공한다.The present invention presents various methods for providing additional security for communication on a shared transmission medium. More specifically, the present invention provides a method of using a scrambling seed based on a key that is preferably handed over in a scrambled communication. The preferred embodiment of the present invention provides one new key for each upstream transmission from the client modem, and one new key for each downstream transmission to the client modem, thereby allowing each transmission between the client modem and the server. Provide two scrambling seeds based on the key.

본 출원은 개별화되었으나 정적인 시드 하에서 키를 넘기는 프로세스를 초기화하는 방법 및 개별화되었으나 정적인 레짐(regime)하에서 멀티캐스트 메시지(multicast message)를 송신하는 요구를 어드레싱하는 변경에 대하여 교시한다.The present application teaches how to initiate a process of handing over a key under a personalized but static seed and a change addressing a request to send a multicast message under a personalized but static regime.

상기 방법 및 다른 실시예들은 공유된 매체 상에서 통신 보안을 향상시키려는 소망에 대하여 필요한 해결책을 제공한다.The method and other embodiments provide a necessary solution to the desire to improve communication security on shared media.

본 발명의 상기한 장점 및 다른 장점은 이하의 도면 및 상세한 설명으로부터 명백하게 나타날 것이다.The above and other advantages of the present invention will become apparent from the following drawings and detailed description.

본 발명을 추가하기 전에, 도 1에서 나타난 것과 같은 네트워크를 위한 일반적인 동작은 서버(36)가 다운스트림 데이터를 송신하는 것이고, 상기 다운스트림 데이터에는 클라이언트 모뎀(60, 62, 64, 66, 68 또는 70)으로 스펙트럼 정형(DVB 장해)을 위한 랜덤화가 행하여져 있다. DVB 랜덤화는 종종 DVB 스크램블링이라고 불린다. 참조된 '845 출원에서 제안된 DVB 랜덤화의 대안적인 방법과는 달리, 종래의 DVB 랜덤화는 그것이 보안을 향상시키려고 의도된다는 점에서 스크램블링은 아니다. 종래의 DVB 랜덤화는 전송 에러 없이 전송된 정보를 수신하는 것을 쉽게 만드는 데이터 전송을 향상시키기 위하여, 표준 프로세스를 통하여 수행된다. 따라서, 상기 인증되지 않은 디바이스(94)가, 클라이언트 모뎀(60)에 어드레싱된 디바이스(72)와 통신하는 세션을 위한 다운스트림 전송을 포획하는 것을 선택한 경우, 상기 통신은, 상기 인증되지 않은 디바이스(94)가 스펙트럼 정형용 DVB 랜덤화를 전환하는 표준 DVB 시퀀스를 통하여 데이터 통신에 다운스트림 전송을 넘긴 후에 디바이스(96)에 의하여 판독될 수 있다(현재 MPEG/DVB 프로토콜은 DVB 랜덤화로부터 FEC 필드를 제외한다는 것을 유의할 것). 후술할 명세서 및 청구범위에서 혼동을 피하기 위하여, 모든 스크램블링에 대한 언급은 DVB 랜덤화 보다는 보안을 추가하는 목적의 스크램블링을 말한다.Prior to adding the present invention, a typical operation for a network such as that shown in FIG. 1 is for the server 36 to transmit downstream data, which may include client modems 60, 62, 64, 66, 68 or 70) randomization for spectral shaping (DVB disturbance) is performed. DVB randomization is often called DVB scrambling. Unlike the alternative method of DVB randomization proposed in the referenced '845 application, conventional DVB randomization is not scrambling in that it is intended to improve security. Conventional DVB randomization is performed through standard processes to enhance data transmission making it easier to receive transmitted information without transmission errors. Thus, if the unauthenticated device 94 has chosen to capture downstream transmissions for a session in communication with the device 72 addressed to the client modem 60, the communication may result in the unauthenticated device ( Can be read by device 96 after 94 transfers the downstream transmission to data communication via a standard DVB sequence that switches spectral shaping DVB randomization (currently the MPEG / DVB protocol excludes the FEC field from DVB randomization). Note). In order to avoid confusion in the specification and claims that follow, all references to scrambling refer to scrambling for the purpose of adding security rather than DVB randomization.

상기 종래의 DVB 랜덤화 프로세스는 전송 프로세스의 일부이고, 본 발명을 위한 문맥의 일부로 본 명세서에서 설명된다. 본 발명은 DVB 랜덤화를 필요로하지 않는다. 아래에 설명한 것처럼, 본 발명은 추가적인 보안 층을 제공하기 위하여 '845 출원에서 제안한 대안적인 DVB 랜덤화 방법과 조합될 수 있다.The conventional DVB randomization process is part of the transmission process and is described herein as part of the context for the present invention. The present invention does not require DVB randomization. As described below, the present invention can be combined with an alternative DVB randomization method proposed in the '845 application to provide an additional layer of security.

인증되지 않은 디바이스가 스크램블링되지 않은 통신을 획득하는 것을 막는 추가적인 보호를 추가하기 위하여, 상기 향상된 방법은 업스트림 및 다운스트림 데이터 모두 보안을 위하여 두 번 스크램블링될 것을 요구한다. 바람직한 실시예는 선택된 통신 부분용 2개의 스크램블링/언스크램블링 레벨을 추가한 반면, 명세서는 단 하나의 추가적인 스크램블링/언스크램블링 레벨을 추가하는 방법을 보여준다.본 기술에 능숙한 당업자는 개시된 발명에 2 레벨 이상의 추가적인 스크램블링/언스크램블링 동작을 추가하는 간단한 변경을 할 수 있을 것이다.In order to add additional protection to prevent unauthorized devices from acquiring unscrambled communications, the improved method requires that both upstream and downstream data be scrambled for security. While the preferred embodiment adds two scrambling / unscrambling levels for the selected communication portion, the specification shows how to add only one additional scrambling / unscrambling level. You can make simple changes to add additional scrambling / unscrambling behavior.

상술한 바와 같이, 다운스트림에 송신된 서브 패킷(130)은 데이터 서브 패킷 헤더(134) 및, 필요에 따라 서브 패킷 데이터(138) 및 서브 패킷 CRC 필드(140)를 포함하는 서브 패킷 페이로드(136)로 구성된다. 다운스트림 "coaXmedia" 헤더는 목적 디바이스 어드레스 및 여러 개의 제어 필드로 구성된다.As described above, the sub packet 130 transmitted downstream includes a sub packet payload including a data sub packet header 134 and a sub packet data 138 and a sub packet CRC field 140 as necessary. 136). The downstream "coaXmedia" header consists of the destination device address and several control fields.

상기 스크램블링의 목적은 서브 패킷 데이터(138)를 보호하는 것이다. 따라서, 상기 비트는 보안 목적을 위하여 스크램블링을 수신한다. 다운스트림 통신을 도청할 경우 더 복잡한 노력이 필요하도록, CRC 필드(140)는 또한 상기 스크램블링을 수신한다. 본 발명의 매우 바람직한 실시예에서는, 서브 패킷 헤더의 일정한 제어 필드도 스크램블링을 수신한다.The purpose of the scrambling is to protect the sub packet data 138. Thus, the bit receives scrambling for security purposes. CRC field 140 also receives the scrambling so that more complex effort is required when eavesdropping downstream communications. In a very preferred embodiment of the present invention, certain control fields of the subpacket header also receive scrambling.

마찬가지로, 업스트림 메시지는 스크램블링된 데이터 패킷 페이로드(168)와 함께 송신될 것이다. 매우 바람직한 실시예에서, 일정 또는 모든 데이터 패킷 헤더(166)가 또한 스크램블링될 것이다. 일정 또는 모든 헤더를 스크램블링 하는 것은, 변수 길이 페이로드의 길이가 스크램블링되므로, 상기 전송을 도청하려고 시도하는 자들에게는 또 다른 장애물을 추가하게 된다. "coaXmedia" 시스템의 상업적인 실시예에서, 업스트림 전송은 최소 전송 길이를 달성하는 패딩(padding)을 갖는다. 따라서, 스크램블링되지 않은 길이 지시자(length indicator)의 부족으로 데이터의 끝 및 패딩의 시작을 구별하는 것이 어렵게 된다.Similarly, the upstream message will be sent with the scrambled data packet payload 168. In a very preferred embodiment, some or all of the data packet headers 166 will also be scrambled. Scrambling certain or all headers adds another obstacle to those attempting to eavesdrop on the transmission, since the length of the variable length payload is scrambled. In a commercial embodiment of the "coaXmedia" system, the upstream transmission has padding to achieve a minimum transmission length. Thus, the lack of an unscrambled length indicator makes it difficult to distinguish between the end of data and the start of padding.

PRBS(Pseudo Random Binary Sequence) 생성자는 전송자에서 데이터를 스크램블링하고 수신자에서 데이터를 언스크램블링하기 위하여 사용된다. 하나의 적합한 생성자는 당업자에는 기지의 선형 피드백 시프트 레지스터(linear feedback shift register)이다. 상기 PRBS 생성자는 시드 값으로 시작하여 시드 값에서의 개개의 비트 또는 비트의 집합 상에서 일련의 조작을 수행한다. 그러면 이 프로세스는 모의 랜덤 숫자들의 반복 가능한 시퀀스를 제공한다. 잘 설계된 선형 피드백 시프트 레지스터는 N이 시프트 레지스터의 사이즈인 경우 2의 N 제곱과 동일한 숫자의 시퀀스를 가질 것이다. 비트를 스크램블링하기 위한 피드백 시프트 레지스터의 전형적인 사용례는 피드백 시프트 레지스터에 시드값을 제공하고 피드백 시프트 레지스터가 레지스터 내용의 조작을 수행하도록 하여 상기 시퀀스의 다음 숫자로 이동시키는 것이다. 상기 피드백 시프트 레지스터로부터의 특정 비트는 스크램블링되는 제1 비트와 함께 배타적 OR 연산에 사용된다. 상기 배타적 OR 연산의 출력은 스크램블링되는 비트를 대체하게 된다. 그러므로, 시프트 레지스터 비트 값에 따라서 스크램블링된 출력은 언스크램블링된 비트에서의 값과 같을 수도 있고 반전될 수도 있다. 상기 피드백 시프트 레지스터는 레지스터 내용의 조작을 수행하고 스크램블링되는 다음 비트 상에서 배타적 OR 연산을 수행한다. 수신 말단부에서, 상기 프로세스가 반복될 수 있다. 만약 대응하는 피드백 시프트 레지스터 및 동등한 시드가 사용된다면, 스크램블링된 메시지에는 개개의 비트 상에서 반전 및 비반전의 같은 패턴이 행해지고, 이에 따라 언스크램블링 후에 수신된 메시지는 그것이 스크램블링되기 전에 송신된 메시지와 동일하다.Pseudo Random Binary Sequence (PRBS) constructor is used to scramble data at the sender and unscramble data at the receiver. One suitable constructor is known to the person skilled in the art, a linear feedback shift register. The PRBS generator performs a series of manipulations on individual bits or sets of bits in the seed value, starting with the seed value. This process then provides a repeatable sequence of mock random numbers. A well designed linear feedback shift register will have a sequence of numbers equal to N squared of two if N is the size of the shift register. A typical use case of a feedback shift register for scrambling bits is to provide a seed value to the feedback shift register and to cause the feedback shift register to perform manipulations of the register contents to move to the next number in the sequence. The specific bit from the feedback shift register is used in an exclusive OR operation with the first bit being scrambled. The output of the exclusive OR operation will replace the scrambled bits. Therefore, the output scrambled according to the shift register bit value may be the same as the value in the unscrambled bit or inverted. The feedback shift register performs manipulation of register contents and performs an exclusive OR operation on the next bit that is scrambled. At the receiving end, the process can be repeated. If the corresponding feedback shift register and equivalent seed are used, the scrambled message is subjected to the same pattern of inversion and non-inversion on the individual bits, so that the message received after unscrambled is the same as the message sent before it was scrambled. .

따라서, 도 3에 나타난 것처럼, 스크램블링되지 않은 메시지(204)의 일부에는 피드백 시프트 레지스터에 의해 생성된 비트 시퀀스(208)와 함께 비트-바이-비트의 배타적 OR 연산(206)이 행해진다. 얻어진 스크램블링된 비트의 시퀀스는 스크램블링된 메시지(212)의 일부로서 송신된다. 전송 말단부에서 사용된 것과 같은 시드를 수신한 후, 같은 숫자의 반복에 대한 같은 내부 조작을 수행하는 피드백 시프트 레지스터는 수신 말단부에서 비트 시퀀스(216)를 생성할 것이다. 수신된 스크램블링된 메시지와 함께 비트-바이-비트의 배타적 OR 연산(206)의 수행을 반복하여 스크램블링되지 않은 송신한 메시지(204)와 부합되는 수신된 스크램블링되지 않은 메시지(220)를 생성한다.Thus, as shown in FIG. 3, a portion of the unscrambled message 204 is subjected to a bit-by-bit exclusive OR operation 206 along with the bit sequence 208 generated by the feedback shift register. The resulting sequence of scrambled bits is transmitted as part of the scrambled message 212. After receiving the same seed as used at the transmit end, a feedback shift register that performs the same internal operation on the same number of iterations will generate a bit sequence 216 at the receive end. Performing the bit-by-bit exclusive OR operation 206 with the received scrambled message is repeated to generate a received unscrambled message 220 that matches the unscrambled transmitted message 204.

본 발명에 의하여 극복되는 문제점들 중 하나는, 다른 클라이언트 모뎀 및 인증되지 않은 디바이스(94)가 시드에 쉽게 액세스하도록 허용하지 않고 PRBS 생성자에 사용될 수 있는 스크램블링 시드(초기 내용)와, 링크의 양측 말단부(클라이언트 모뎀 및 서버)를 동기화 시켜야 할 필요성이다. 종종, 시드를 생성하는데 사용되는 키를 제외하고 실제의 시드는 넘겨지지 않는 경우가 있다. 따라서, 이하의 명세서 및 청구범위에서, 시드는 스크램블링 디바이스에 공급된 실제 값이며 키의 함수(시드가 키와 동일한 명백한 경우를 포함함)이다. 상기 키는 스크램블링된 데이터를 보호하기 위하여 반드시 기밀로 남아야 하고 또한 클라이언트 모뎀 및 서버 사이에 넘겨져서 이들 각각이 유입되는 스크램블링된 통신을 언스크램블링 할 수 있어야만 한다.One of the problems overcome by the present invention is a scrambling seed (initial content) that can be used in the PRBS producer without allowing other client modems and unauthorized devices 94 to access the seed, and both ends of the link. It is necessary to synchronize (client modem and server). Often, the actual seed is not passed, except for the key used to generate the seed. Thus, in the following specification and claims, the seed is the actual value supplied to the scrambling device and is a function of the key (including the case where the seed is the same as the key). The key must remain confidential to protect the scrambled data and must be handed over between the client modem and the server so that each of them can scramble the incoming scrambled communication.

양측 말단부를 동기화하는 것에 대한 해결책은 각 클라이언트 모뎀에 자기 자신의 키를 가려내서 업스트림 채널의 서버에 키를 넘기는 능력을 부여하는 것이다. 업스트림 채널(클라이언트 모뎀에서 서버로)은 다운스트림 채널과 다른 주파수 대역에 있고 어떤 다른 클라이언트 모뎀에 의해서도 수신할 수 없다. 따라서, 클라이언트 모뎀이 어떤 업스트림 RF 채널도 수신할 수 없다는 사실에 의하여, 하나의 클라이언트 모뎀이 다른 클라이언트 모뎀의 업스트림 메시지 및 키 상에서 도청하는 것을 방해한다. 상술한 것처럼, 업스트림 채널의 사용함으로써 다운스트림 데이터 전송을 도청하려는 어떠한 시도에 기술적인 어려움을 추가하게 되는데, 상기 업스트림 채널 상에 인증되지 않은 청취가 존재할 경우라도 마찬가지이다. 이러한 문제점들은 원격 가지(remote branch)를 청취하려는 시도에 존재하는 감쇠 및 다운스트림 전송 상에서 도청하기 위하여 업스트림 전송을 해독하려는 요구를 포함한다.The solution to synchronizing both ends is to screen each client modem with its own key and give the upstream channel's server the ability to pass the key. The upstream channel (client modem to server) is in a different frequency band than the downstream channel and cannot be received by any other client modem. Thus, the fact that a client modem cannot receive any upstream RF channel prevents one client modem from eavesdropping on the upstream messages and keys of another client modem. As mentioned above, the use of an upstream channel adds technical difficulties to any attempt to eavesdrop downstream data transmissions, even if there is unauthorized listening on the upstream channel. These problems include the need to decode upstream transmissions to eavesdrop on attenuation and downstream transmissions that exist in attempts to listen to remote branches.

바람직한 실시예를 위한 이벤트의 시퀀스는 아래에 설명한 바와 같다. 표 A는 시퀀스 단계의 요약을 제공한다(표 A는 용어집(glossary) 다음, 청구범위 전에 위치한다). 도 4는 다양한 단계를 수행하는 시스템의 논리적인 컴포넌트 사이의 관계를 보여준다. 하나 이상의 논리적 함수가 하나의 물리적 디바이스에 의하여 수행될 수 있으므로, 실제의 물리적인 레이아웃은 도 4와는 다를 수 있다. 다양한 컴포넌트의 이름의 길이를 줄이기 위하여, US는 업스트림을 나타내고, DS는 다운스트림을 나타낸다. 도 4는 본 발명의 논의에 관련되지 않은 서버(36) 또는 클라이언트 모뎀(70)에서 수행되는 다른 함수는 포함하지 않는다.The sequence of events for the preferred embodiment is as described below. Table A provides a summary of the sequence steps (Table A is located after the glossary and before the claims). 4 shows the relationship between logical components of a system performing various steps. Since one or more logical functions may be performed by one physical device, the actual physical layout may differ from FIG. 4. To shorten the length of the names of the various components, US stands for upstream and DS stands for downstream. 4 does not include other functions performed in server 36 or client modem 70 that are not relevant to the discussion of the present invention.

파워-업에서, 소정의 디폴트 시드 워드(default seed word)가 업스트림 및 다운스트림 스크램블러 모두에 대하여 사용될 수 있다. 바람직한 실시예에서, 시드가 각 클라이언트 모뎀용 MAC ID에 기초한 것이지만, 그 값이 클라이언트 모뎀 및 서버에 알려져 있는 경우 시드를 생성하기 위하여 다른 값이 사용될 수도 있다. 전체적인 MAC ID는 본 발명의 범위 내에서 사용될 수 있을 것이지만, MAC ID에 기초한 보다 짧은 시드가 사용될 가능성이 많다. 시드는 MAC ID에 기초하고 있으므로, 이것은 각 클라이언트는 파워-업에서 단일한 스크램블링 시퀀스를 가진다는 것을 의미할 것이다. 각 클라이언트 모뎀용 MAC ID는 클라이언트 모뎀이 인증된 장비로서 추가되는 경우 서버에 연결된 키보드로 MAC ID를 입력하는 것에 의하여 서버에 알려지게 된다. 새롭게 발견된 클라이언트 모뎀의 MAC ID를 식별하는 보다 창의적인 방법은 함께 계류중인 출원[미국 출원번호 60/309,809호; 트리-가지 네트워크 상의 수동적인 동축선 분배와 같은 공유된 전송 매체에서 다운스트림 모뎀을 효율적으로 탐지하고 폴링하는 방법(A Method for Efficiency Dectecting and Polling Downstream Modems in a Shared Transmission Media Such as Passive Coax Distribution on a Tree and Branch Network)]에서 설명하고 있다.In power-up, certain default seed words can be used for both upstream and downstream scramblers. In a preferred embodiment, the seed is based on the MAC ID for each client modem, but other values may be used to generate the seed if the value is known to the client modem and server. The overall MAC ID may be used within the scope of the present invention, but shorter seeds based on the MAC ID are more likely to be used. Since the seed is based on the MAC ID, this would mean that each client has a single scrambling sequence at power-up. The MAC ID for each client modem is known to the server by entering the MAC ID with a keyboard connected to the server when the client modem is added as an authenticated device. A more creative method of identifying the MAC ID of a newly discovered client modem is described in co-pending application [US Application No. 60 / 309,809; A method for Efficiency Dectecting and Polling Downstream Modems in a Shared Transmission Media Such as Passive Coax Distribution on a Tree and Branch Network).

단계(410)에서, 하나 이상의 클라이언트 모뎀에 전송되도록 예정된 하나 이상의 서브 패킷을 포함하는 프레임은 DS 데이터 버퍼(508)에 도달한다. 상기 서브 패킷은 서브 패킷의 일부에 기초하여 CRC 계산기(510)에서 계산된 CRC 값(140)을 수신한다. CRC 값은 전송 체크 워드(transmission check word)를 제공하는 잘 알려진 방법중의 하나이다. 전송 체크 워드는 전송 프로세스가 통신을 변경하는지 여부를 탐지하기 위하여 사용된다. 이상적으로, 모든 변경된 통신을 감지하고 폐기하여야 한다. 전송 체크 워드를 계산하고 전송으로 그것을 송신함으로써, 수신된 통신의 관련 부분 상에서 전송 체크 워드를 계산하고 전송 체크 워드의 전송된 값에 대하여 이 값을 체크하는 것에 의하여 전송 프로세스의 무결성을 검사할 수 있다.In step 410, a frame comprising one or more subpackets intended to be sent to one or more client modems arrives in the DS data buffer 508. The subpacket receives the CRC value 140 calculated by the CRC calculator 510 based on a portion of the subpacket. The CRC value is one of the well known ways of providing a transmission check word. The transfer check word is used to detect whether the transfer process changes the communication. Ideally, all modified communications should be detected and discarded. By calculating the transfer check word and transmitting it in a transfer, one can check the integrity of the transfer process by calculating the transfer check word on the relevant portion of the received communication and checking this value against the transmitted value of the transfer check word. .

CRC 값을 생성하는 기지의 방법 중 하나는 메시지를 긴 바이너리 워드로 취급하여 정해진 숫자로 상기 워드를 분할하고 남은 것을 CRC 값으로 전송하는 것이다. 클라이언트 모뎀 및 서버 모두 같은 알고리즘을 사용하여 CRC 값을 생성하거나 체크하는 한 CRC 값을 생성하는 다른 방법들이 사용될 수 있다. 상술한 바와 같이, CRC 값은 전송 프로세스에서 에러를 탐지하기 위한 수단으로서 송신된다. CRC 계산은 수신된 데이터 상에서 수행되고 상기 데이터는, 수신된 데이터용 상기 CRC 값이 송신된 CRC 값에 부합되지 않는 경우 폐기된다.One known method of generating a CRC value is to treat the message as a long binary word, divide the word by a fixed number and send the remainder as the CRC value. Other methods of generating a CRC value can be used as long as both the client modem and the server generate or check the CRC value using the same algorithm. As mentioned above, the CRC value is transmitted as a means for detecting errors in the transmission process. CRC calculation is performed on the received data and the data is discarded if the CRC value for the received data does not match the transmitted CRC value.

단계(410)에서 계속하면, 서버(36)가 목적 클라이언트 모뎀의 MAC 어드레스를 가진 후(단계 '400'), 시드가 키 생성자(516)로부터 DS 레이어2 스크램블링 블록(520)으로 송신될 수 있다. 나가는 다운스트림 메시지는 피드백 시프트 레지스터에 공급되는 시드에 기초하여 스크램블링되고, 여기에서 시드는 클라이언트 모뎀 MAC 어드레스의 기지의 변동값이다. 따라서, 클라이언트 모뎀에 송신된 메시지는 MAC ID에 기초하여 시드를 사용하는 제1 레벨 스크램블링을 수신할 것이다. 상술한 바와 같이, 스크램블링된 서브 패킷의 일부는 서브 패킷 페이로드(136)이거나 서브 패킷 헤더(134)의 일정 제어 필드에 페이로드를 더한 것이 될 수 있다. 다행하게도, 서브 패킷 헤더(134)의 하나의 필드는, 메시지가 MAC ID에 기초한 시드를 스크램블링 시드로 사용하고 있다는 것을 지시하는데 사용될 수 있다. 만약 이 옵션을 선택한다면, 서브 패킷 헤더(134)의 상기 부분은 스크램블링을 수신해서는 안되고, 그리하여 상기 필드는 스크램블링 레벨을 언스크램블링하려는 어떠한 시도가 있기 전에 판독될 수 있다. MAC ID에 기초한 시드의 사용에 유의하는 스크램블링되지 않은 필드에 대한 대안으로서, 상기 클라이언트 모뎀이 다른 시드값을 갖지 않거나 최종 수신된 시드값이 전송된 CRC 코드와 부합되는 언스크램블링된 메시지를 제공하지 않는 경우, MAC ID에 기초하여 사용된 시드는 메시지를 언스크램블링하기 위하여 사용하는 디폴트 시드가 될 수 있다.Continuing at step 410, after the server 36 has the MAC address of the target client modem (step '400'), the seed may be sent from the key generator 516 to the DS layer 2 scrambling block 520. . The outgoing downstream message is scrambled based on the seed supplied to the feedback shift register, where the seed is a known change in the client modem MAC address. Thus, the message sent to the client modem will receive first level scrambling using the seed based on the MAC ID. As described above, some of the scrambled subpackets may be the subpacket payload 136 or the payload added to a certain control field of the subpacket header 134. Fortunately, one field of subpacket header 134 can be used to indicate that the message is using a seed based on the MAC ID as the scrambling seed. If this option is selected, the portion of the sub packet header 134 should not receive scrambling, so that the field can be read before any attempt to unscramble the scrambling level. As an alternative to the unscrambled field, noting the use of a seed based on MAC ID, the client modem does not have a different seed value or the last received seed value does not provide an unscrambled message that matches the transmitted CRC code. In this case, the seed used based on the MAC ID may be the default seed used to unscramble the message.

본 발명의 바람직한 실시예에서, 상기 프로세스는 DS 레벨1 스크램블링(524)에서 반복된다. 다시, 시드는 목적 클라이언트 모뎀용 MAC ID에 기초하고, 상기 정보는 키 생성자(516)로부터 블록(524)으로 넘겨진다. 바람직한 실시예에서, MAC ID에 기초한 스크램블링의 제2 세트는 스크램블링의 제1 세트와는 같지 않을 것이다(그렇지 않으면 제1 세트를 원상복귀 시킬 것이다). 목적 클라이언트 모뎀 MAC ID에 기초한 시드를 계산하는 다른 방법을 사용함으로써, 스크램블링에서의 차이를 만들 수 있다. 이와 달리, 스크램블링에서의 차이는 두 피드백 시프트 레지스터의 연산에 차이를 두거나 피트백 시프트 레지스터 및 시드가 계산되는 방법 모두에 차이를 둠으로써 구현될 수도 있다. 필요에 따라, 상기 시스템은 초기에 블록(520)이나 블록(524)에서 1레벨 스크램블링으로 동작할 수도 있다.In a preferred embodiment of the present invention, the process is repeated at DS level 1 scrambling 524. Again, the seed is based on the MAC ID for the destination client modem, and the information is passed from the key generator 516 to block 524. In a preferred embodiment, the second set of scrambling based on the MAC ID will not be the same as the first set of scrambling (otherwise the first set will be restored). By using another method of calculating the seed based on the destination client modem MAC ID, one can make a difference in scrambling. Alternatively, the difference in scrambling may be implemented by placing a difference in the operation of the two feedback shift registers or by both the pitback shift register and the way the seed is calculated. If desired, the system may initially operate with one level scrambling at block 520 or 524.

스펙트럼 정형용 종래의 DVB 랜덤화에는 DS DVB 랜덤화 블록(528)이 추가된다. 상기 메시지는 변조되어 다운스트림 채널 상에서 클라이언트 모뎀으로 전송된다.DS DVB randomization block 528 is added to the conventional DVB randomization for spectral shaping. The message is modulated and sent to the client modem on the downstream channel.

단계(414)에서, 모든 클라이언트 모뎀은 상기 메시지를 수신하고 RF 변조를 전환한다. 다음으로, 각 클라이언트 모뎀은 블록(632)에 의하여 나타난 DVB 랜덤화를 제거한다. 바람직한 실시예에서, 클라이언트 모뎀은, 스크램블링된 정보를 언스크램블링하는 두 개의 시드를 위한 기초로서 클라이언트 모뎀이 MAC ID를 사용해야만 한다는 것을 가리키는 서브 패킷의 헤더 내의 필드를 판독한다. 바람직한 실시예에서, 언스크램블링은 DS 레이어1 스크램블링 블록(636) 및 DS 레이어2 스크램블링 블록(640)에서 순차적으로 수행된다. CRC 값은 CRC 검증(614)에서 계산된다. 만약 클라이언트 모뎀의 블록(614)에서 계산된 언스크램블링된 서브 패킷의 CRC가 블록(510)으로부터 넘겨진 CRC값과 부합된다면, DS 데이터 버퍼(608)에서의 메시지는 계속 보유되고 사용된다. 만약 부합되지 않는다면 메시지는 버려진다. 클라이언트는 그 응답을(송신할 데이터가 없다는 응답 또는 클라이언트 모뎀으로부터 데이터 전송의 프로세스를 개시하는 것과 같이) 공식화한다. 응답이 생성되고 US 데이터 버퍼(612)에 위치한 프레임에 위치하게 된다.In step 414, all client modems receive the message and switch RF modulation. Next, each client modem removes the DVB randomization indicated by block 632. In the preferred embodiment, the client modem reads a field in the header of the subpacket indicating that the client modem should use the MAC ID as the basis for the two seeds to scramble the scrambled information. In a preferred embodiment, unscrambling is performed sequentially in the DS layer 1 scrambling block 636 and the DS layer 2 scrambling block 640. The CRC value is calculated at CRC verification 614. If the CRC of the unscrambled subpacket calculated at block 614 of the client modem matches the CRC value passed from block 510, the message at DS data buffer 608 is still held and used. If not, the message is discarded. The client formulates its response (such as a response that there is no data to send or initiates the process of sending data from the client modem). The response is generated and placed in a frame located in US data buffer 612.

단계(420)에서, CRC값(170)은 CRC Calc 블록(610)에서 계산되고 업스트림 패킷에 추가된다. CRC값은 단계(434 및 440)에서 장래에 사용되기 위해 시드/키 생성자(616)에 넘겨진다. 클라이언트 모뎀은 US 레이어2 스크램블링(620)에서 우선 스크램블링을 수행하고 다시 US 레이어1 스크램블링(624)에서 클라이언트 모뎀의 MAC ID에 기초한 시드를 사용한다. 상술한 것처럼, 두 스크램블링 연산은 MAC ID에 기초한 시드를 계산하는 다른 방법들을 사용하고, 피드백 시프트 레지스터에서 시드를 다르게 조작하거나, 이것들 모두를 행할 수도 있다.In step 420, CRC value 170 is calculated in CRC Calc block 610 and added to the upstream packet. The CRC value is passed to the seed / key generator 616 for use in the future at steps 434 and 440. The client modem first performs scrambling in US Layer 2 scrambling 620 and again uses the seed based on the MAC modem of the client modem in US Layer 1 scrambling 624. As mentioned above, the two scrambling operations may use other methods of calculating the seed based on the MAC ID, and manipulate the seed differently in the feedback shift register, or both.

한 가능한 실시예에서, 업스트림 데이터 패킷 헤더(166)의 일부는 스크램블링을 수신하고 스크램블링되지 않은 필드는 서버에 상기 업스트림 전송이 MAC ID에 기초한 스크램블링을 사용하고 있는지 여부를 알릴 것이다. 그러나 이러한 필드의 사용은 상기 바람직한 실시예에서는 필요하지 않은데, 그 이유는 서버가 초기화 시퀀스의 다음 논리적 단계로서 클라이언트 모뎀에서 응답을 해석하고 적절히 동작하기 때문이다. 바람직한 실시예에서, 단지 서버는 클라이언트 모뎀과 연결하려는 새로운 시도를 시작한다. 따라서, 상기 클라이언트 모뎀만이 어떤 통신이 통신의 이전 시퀀스의 계속인지 또는 재시작인지를 확인해야 한다.In one possible embodiment, part of the upstream data packet header 166 receives scrambling and the unscrambled field will inform the server whether the upstream transmission is using scrambling based on MAC ID. However, the use of these fields is not necessary in the above preferred embodiment because the server interprets the response in the client modem as the next logical step in the initialization sequence and operates properly. In the preferred embodiment, the server only starts a new attempt to connect with the client modem. Thus, only the client modem should identify which communication is the continuation or restart of the previous sequence of communication.

US DVB 랜덤화는 블록(632)에 추가되고 상기 프레임은 업스트림 채널 상의 RF 변조와 함께 송신된다.US DVB randomization is added to block 632 and the frame is transmitted with RF modulation on the upstream channel.

단계(424)에서, 상기 서버는 상기 프레임을 수신하고 그것을 변조한다. 상기 US DVB 랜덤화는 블록(532)에서 제거된다. 상기 US 레이어1 스크램블링은 블록(536)에서 클라이언트 모뎀의 MAC ID에 기초한 시드와 함께 제거된다.In step 424, the server receives the frame and modulates it. The US DVB randomization is removed at block 532. The US layer 1 scrambling is removed with a seed based on the MAC ID of the client modem at block 536.

언스크램블링의 제2 라운드는 블록(540)에서 발생한다. 다시, 클라이언트 모뎀의 MAC ID에 기초한 시드가 사용된다. 송신된 CRC 코드(170)는 CRC 검증 블록(514)의 상기 수신된 데이터 패킷에 기초하여 계산된 CRC 코드에 대하여 체크된다. 만약 CRC 코드가 부합되면, 데이터 패킷이 수용되고 CRC 코드가 키 생성자(516)에 송신되어 계속적으로 시드 값용 키로서 사용된다. 만약 CRC 코드가 부합되지 않는다면 상기 수신된 데이터 패킷은 폐기된다.The second round of unscrambling occurs at block 540. Again, a seed based on the MAC ID of the client modem is used. The transmitted CRC code 170 is checked against a calculated CRC code based on the received data packet of the CRC verification block 514. If the CRC code is matched, the data packet is accepted and the CRC code is sent to the key generator 516 to continue to be used as the key for the seed value. If the CRC code does not match, the received data packet is discarded.

단계(430)에서, 다운스트림 서브 패킷을 송신하는 프로세스가 반복된다. 키생성자(516)에 의하여 생성되는 랜덤 숫자는 CRC 값(140)이 CRC Calc 블록(510)에서 다시 계산되기 전에 CRC Calc 블록(510)의 다운스트림 데이터 서브 패킷의 데이터 페이로드에 추가된다. MAC ID에 기초한 스크램블링의 초기 레벨은 DS 레이어2 스크램블링 블록(520)에서 발생한다. DS 레이어1 스크램블링은 목적 클라이언트로부터 수신된 최종 업스트림 데이터 패킷으로부터 가장 최근의 CRC 코드에 기초한 시드를 사용하여 블록(524)에서 추가된다.In step 430, the process of transmitting downstream subpackets is repeated. The random number generated by the key generator 516 is added to the data payload of the downstream data subpacket of the CRC Calc block 510 before the CRC value 140 is recalculated in the CRC Calc block 510. An initial level of scrambling based on the MAC ID occurs at DS layer 2 scrambling block 520. DS layer1 scrambling is added at block 524 using a seed based on the most recent CRC code from the last upstream data packet received from the destination client.

단계(434)에서, 다운스트림 서브 패킷을 수신하는 프로세스는 각 클라이언트 모뎀에서 반복된다. DS DVB 랜덤화가 블록(632)에서 제거된 후, DS 레이어1 스크램블링은 클라이언트 모뎀으로부터 최종 업스트림 전송용 최종 CRC 코드에 기초한 시드를 사용하여 블록(636)에서 제거된다. 바람직한 실시예에서, 클라이언트 모뎀은, 다운스트림 서브 패킷이 CRC 코드에 기초한 시드 및 MAC ID에 기초한 시드와 조합되어 스크램블링된다는 것을 가리키는 다운스트림 데이터 서브 패킷의 스크램블링되지 않은 필드를 판독한다. 상기 필드 값은 최종 CRC 코드가 서버에 의하여 정확하게 수신되었고 최종 업스트림 CRC 코드(170)를 시드가 다음 업스트림 메시지를 스크램블링하는 키(이것은 차례로 새로운 CRC 값을 넘긴다)로서 사용해야 한다는 것을 클라이언트 모뎀에 알려준다.In step 434, the process of receiving downstream subpackets is repeated at each client modem. After DS DVB randomization is removed at block 632, DS layer 1 scrambling is removed at block 636 using a seed based on the final CRC code for the final upstream transmission from the client modem. In a preferred embodiment, the client modem reads an unscrambled field of the downstream data subpacket indicating that the downstream subpacket is scrambled in combination with a seed based on the CRC code and a seed based on the MAC ID. The field value tells the client modem that the final CRC code was correctly received by the server and that the final upstream CRC code 170 should be used as the key for the seed to scramble the next upstream message, which in turn passes the new CRC value.

MAC ID에 기초한 시드에 기초한 스크램블링은 DS 레이어2 스크램블링 블록(640)에서 제거된다. 스크램블링되지 않은 데이터 서브 패킷은 CRC 검증 블록(614)에서 또 다른 CRC 값을 생성하기 위하여 사용된다. 하나의 클라이언트 모뎀을 제외한 모두에 대하여, 이것은 상기 수신된 데이터용으로 생성된 CRC 코드와 부합되는 정확한 다운스트림 CRC 코드(170)를 갖는 스크램블링되지 않은 데이터 패킷 및 상기 클라이언트 모뎀과 연관된 다운스트림 어드레스에 도달하지 않을 것이다. 상기 목적 클라이언트 모뎀은 정확하게 데이터 서브 패킷을 언스크램블링시키고 CRC 코드 및 어드레스 모두가 양호하다는 것을 발견할 것이다. 그러면 CRC 검증 블록(614)은 수신된 랜덤 숫자를 키 생성자(616)로 넘긴다.Seed based scrambling based on the MAC ID is removed in the DS layer 2 scrambling block 640. The unscrambled data subpacket is used to generate another CRC value at CRC verification block 614. For all but one client modem, this arrives at an unscrambled data packet with the correct downstream CRC code 170 that matches the CRC code generated for the received data and a downstream address associated with the client modem. I will not. The destination client modem will correctly unscramble the data subpackets and find that both the CRC code and address are good. CRC verification block 614 then passes the received random number to key generator 616.

단계(440)는 데이터 패킷 업스트림을 송신하는 프로세스를 반복한다. 새로운 CRC 코드(170)는 CRC Calc 블록(610)에서 생성되고 업스트림 데이터 패킷(160)에 위치된다. 업스트림 데이터 패킷은 US 레이어2 스크램블링 블록(620)에서 최종 다운스트림 전송에서 수신된 랜덤 숫자 키에 기초한 시드와 함께 스크램블링된다. 상기 스크램블링된 데이터 패킷은 이전의 업스트림 데이터 패킷으로부터 CRC 코드에 기초한 시드를 사용하여 US 레이어1 스크램블링 블록(624)에서 다시 스크램블링된다. US DVB 랜덤화는 블록(628)에 추가된다.Step 440 repeats the process of transmitting the data packet upstream. The new CRC code 170 is generated in the CRC Calc block 610 and located in the upstream data packet 160. The upstream data packet is scrambled with the seed based on the random numeric key received in the last downstream transmission in US Layer 2 scrambling block 620. The scrambled data packet is scrambled again in US layer 1 scrambling block 624 using a seed based on a CRC code from a previous upstream data packet. US DVB randomization is added to block 628.

단계(444)는 업스트림 전송을 수신하는 프로세스를 반복한다. US DVB 랜덤화가 블록(532)에서 제거된 후, US 레이어1 스크램블링은 특정 클라이언트 모뎀으로부터 이전 업스트림 전송의 CRC 코드에 기초한 시드와 함께 블록(536)에서 제거된다. US 레이어1 스크램블링이 제거된 후, US 레이어2 스크램블링은 상기 특정 클라이언트 모뎀으로 최종 다운스트림 전송과 함께 넘겨지는 랜덤 숫자 키 상에 기초한 시드와 함께 블록(540)에서 제거된다.Step 444 repeats the process of receiving an upstream transmission. After US DVB randomization is removed at block 532, US layer 1 scrambling is removed at block 536 with a seed based on the CRC code of the previous upstream transmission from the particular client modem. After US layer 1 scrambling is removed, US layer 2 scrambling is removed at block 540 with a seed based on a random numeric key passed with the final downstream transmission to the particular client modem.

상술한 것처럼, CRC 검증 블록(514)에서 수신된 데이터 패킷에 기초하여 계산된 CRC 코드에 대하여, 상기 전송된 CRC 코드(170)를 체크한다. 만약 CRC코드가부합된다면, 데이터 패킷이 수용되고 CRC 코드는 키 생성자(516)로 송신되어, 그 후의 시드 값으로 사용된다. 만약 CRC 코드가 부합되지 않는다면, 수신된 데이터 패킷은 폐기된다.As described above, for the CRC code calculated based on the data packet received in CRC verification block 514, the transmitted CRC code 170 is checked. If the CRC code is matched, the data packet is accepted and the CRC code is sent to the key generator 516 to be used for subsequent seed values. If the CRC code does not match, the received data packet is discarded.

단계(450)는 서브 패킷 다운스트림을 송신하는 프로세스를 반복한다. 새로운 랜덤 숫자가 시드/키 생성자(516)에서 생성되고 CRC Calc 블록(510)으로 넘겨져서 CRC 값(140)이 계산되고 다운스트림 서브 패킷(130)에 추가되기 전에 각 다운스트림 서브 패킷의 데이터 부분으로 삽입된다. 상기 랜덤 숫자는 이 특정 클라이언트 모뎀으로부터 다음 업스트림 전송을 언스크램블링하는데 사용하기 위하여 키 생성자(516)에 저장된다. DS 레이어2 스크램블링은 목적 클라이언트 모뎀으로 이전에 송신된 랜덤 숫자에 기초한 시드를 사용하여 블록(520)에서 발생한다. DS 레이어1 스크램블링은 목적 클라이언트 모뎀으로부터 최종 업스트림 전송으로부터의 가장 최근의 CRC 코드에 기초한 시드를 사용하여 블록(524)에서 발생한다.Step 450 repeats the process of transmitting subpackets downstream. A new random number is generated at the seed / key generator 516 and passed to the CRC Calc block 510 so that the data portion of each downstream subpacket before the CRC value 140 is calculated and added to the downstream subpacket 130. Is inserted. The random number is stored in key generator 516 for use in unscrambled the next upstream transmission from this particular client modem. DS layer 2 scrambling occurs at block 520 using a seed based on a random number previously sent to the destination client modem. DS layer1 scrambling occurs at block 524 using a seed based on the most recent CRC code from the final upstream transmission from the destination client modem.

단계(454)는 다운스트림 전송을 수신하는 프로세스를 반복한다. DS 레이어1 스크램블링은 상기 클라이언트 모뎀으로부터 최종 업스트림 전송용 CRC 코드에 기초한 시드의 사용을 통하여 목적 클라이언트 모뎀용 블록(640)에서 정확하게 제거된다. DS 레이어2 스크램블링은 이전에 송신된 랜덤 숫자에 기초한 시드의 사용을 통하여 블록(636)에서 정확하게 제거된다. 서버에 의하여 송신된 새로운 랜덤 숫자는 Calc 검증 블록(614)에서 적당히 언스크램블링된 메시지로부터 취해지고 시드/키 생성자(616)에 저장된다.Step 454 repeats the process of receiving a downstream transmission. DS layer 1 scrambling is correctly removed from the client modem block 640 through the use of a seed based on the CRC code for the final upstream transmission. DS layer2 scrambling is correctly removed at block 636 through the use of a seed based on previously transmitted random numbers. The new random number sent by the server is taken from the properly unscrambled message in Calc verification block 614 and stored in seed / key generator 616.

단계(460)에서 프로세스는, 상기 특정 모뎀으로부터의 가장 최근의 업스트림CRC 코드에 기초한 US 레이어1 스크램블링 및 서버에 의하여 특정 클라이언트 모뎀으로 송신된 가장 최근의 랜덤 숫자 상에 기초한 US 레이어2 스크램블링으로 계속 된다. 이 프로세스는 MAC ID에 기초한 시드의 사용으로 프로세스가 재시작 되도록 하는 중단이 있을 때까지 계속된다.In step 460 the process continues with US Layer 1 scrambling based on the most recent upstream CRC code from the particular modem and US Layer 2 scrambling based on the most recent random number sent by the server to the particular client modem. . This process continues until there is an interruption that causes the process to restart with the use of a seed based on the MAC ID.

당업자에게 명백한 것처럼, 서버는 각 클라이언트 모뎀용 CRC 코드 및 관련된 랜덤 숫자를 관리해야만 한다. 바람직한 실시예를 변경하여, 키 시퀀스의 조작에 기초한 시드를 얻을 수 있다. 따라서, DS 레이어1 스크램블링용 키는 특정 클라이언트 모뎀용 최종 6자리의 저장된 CRC값의 합의 몇 개의 LSB(least significant bit)에 기초할 수 있다. 이와 달리, CRC값 및 랜덤 숫자의 집합은 MAC ID에 기초한 시드로부터 교환되기 전에 특정 클라이언트 모뎀을 위하여 축적될 수 있다. 상기 값들의 축적은 CRC 값의 전송 또는 랜덤 숫자 및 그것의 사용 사이에서 래그(lag)를 사용하도록 허용할 것이다. 이러한 개념들은 혼합될 수 있고, DS 레이어1 스크램블링은 상기 클라이언트 모뎀으로부터의 최근 제2 및 제4 번째 통신으로부터 CRC값을 사용할 수 있으므로 시드는 특정한 키를 위한 최근 제2 및 제4 번째의 CRC 코드의 함수이다. 같은 종류의 조작이 서버에서 생성된 키 값에도 적용될 수 있다.As will be apparent to those skilled in the art, the server must manage the CRC code and associated random number for each client modem. By modifying the preferred embodiment, a seed based on the manipulation of the key sequence can be obtained. Thus, the key for DS layer1 scrambling may be based on several least significant bits (LSBs) of the sum of the last 6 digits stored CRC value for a particular client modem. Alternatively, a set of CRC values and random numbers can be accumulated for a particular client modem before being exchanged from the seed based on the MAC ID. Accumulation of these values will allow the use of a lag between the transmission or random number of CRC values and their use. These concepts can be mixed, and since DS layer 1 scrambling can use CRC values from the latest second and fourth communications from the client modem, the seed is a function of the most recent second and fourth CRC codes for a particular key. to be. The same kind of operation can be applied to key values generated by the server.

[재시작][Restart]

서버(36)가 클라이언트 모뎀으로부터 시드를 수신한 후에, 만약 나중에 서버가 클라이언트 모뎀에 폴 메시지를 송신하거나 패킷을 전송하고, 클라이언트 모뎀으로부터 응답을 수신하지 않는다면 재시작이 필요할 것이다. 이러한 상황에서,서버는 곧 파워-업 스크램블링 시드를 다시 사용하게 되는데, 이러한 경우의 파워-업 스크램블링 시드는 MAC ID에 기초한다. 다운스트림 데이터 서브 패킷은, 상기 MAC ID에 기초한 시드가 상기 패킷용으로 사용된다는 것을 가리키는 관련 헤더 필더를 가질 것이고 이것은 클라이언트 모뎀에게 MAC ID에 기초한 시드를 사용하도록 지시할 것이다. 따라서, 만약 다운스트림 메시지가 혼탁해지고 클라이언트 모뎀이 응답하지 않는 경우, 상기 프로세스는 통신을 상기 MAC ID 시드를 사용하여 통신을 다시 초기화시키는 것으로 간단하게 복귀할 것이다. 마찬가지로, 만약 업스트림 메시지가 혼탁하게 된다면, 상기 서버는 상기 MAC ID 시드를 사용하여 통신을 다시 초기화시키는 것으로 간단하게 복귀할 것이다.After the server 36 receives the seed from the client modem, a restart will be required if the server later sends a poll message or sends a packet to the client modem and does not receive a response from the client modem. In this situation, the server will soon use the power-up scrambling seed again, in which case the power-up scrambling seed is based on the MAC ID. The downstream data subpacket will have an associated header field indicating that a seed based on the MAC ID is used for the packet, which will instruct the client modem to use the seed based on the MAC ID. Thus, if the downstream message becomes cloudy and the client modem does not respond, the process will simply return to reinitializing the communication using the MAC ID seed. Likewise, if an upstream message becomes cloudy, the server will simply return to reinitializing the communication using the MAC ID seed.

[시드값이 0이 되는 것의 방지][Prevention of seed value becoming 0]

바람직한 실시예는 스크램블링이 모두 0으로 된 시드로 초기화되는 것을 방지하기 위하여 작은 차이점이 추가되어 있다(어떤 피드백 시프트 레지스터는 모두 0으로 된 시드값을 효과적으로 변경하지 않는다). 모두 0으로 된 시드를 방지하는 한 가지 방법은 공급된 시드보다 최소한 1비트 긴 실제의 스크램블러 시드를 만드는 것이다. 상기 여분의 비트는 항상 1로 설정되어 스크램블링을 위하여 사용된 시드는 항상 0이 아닌 숫자로 초기화되게 된다. 모두 0으로 된 시드를 변경하는 피드백 시프트 레지스터를 사용하는 방법 또는 모두 0으로 된 시드를 생성하지 않는 시드 및 키 생성자를 사용하는 방법은 모두 0으로 된 시드의 문제점을 방지하는 다른 방법들이다.The preferred embodiment adds a small difference to prevent scrambling from being initialized with all zero seeds (some feedback shift registers do not effectively change all zero seeds). One way to prevent all zero seeds is to create a real scrambler seed that is at least one bit longer than the seed supplied. The extra bit is always set to 1 so that the seed used for scrambling is always initialized to a non-zero number. Using a feedback shift register that changes all zero seeds or using a seed and key generator that does not generate all zero seeds are other ways to avoid the problem of all zero seeds.

[다른 실시예][Other Embodiments]

상술한 바와 같이, 상기 새로운 방법은 기술에 능숙한 당업자에 의하여 다양한 방면에 적용될 수 있다.As mentioned above, the new method can be applied to various aspects by those skilled in the art.

바람직한 실시예는 스크램블링의 2가지 레벨을 사용한다. 당업자는 상술한 수단을 사용하여 상술한 바와 같은 업스트림 CRC 코드에 기초한 1레벨의 스크램블링을 초기화하고 서버에서 생성된 랜덤 숫자에 기초한 제2 레벨의 스크램블링을 추가하지 않을 수 있다.The preferred embodiment uses two levels of scrambling. Those skilled in the art can use the means described above to initiate one level of scrambling based on the upstream CRC code as described above and not add a second level of scrambling based on a random number generated at the server.

이와 달리, 당업자는 MAC ID에 기초한 시드를 사용하는 스크램블링 후 서버에서 생성된 랜덤 숫자를 다음 단계에서 사용할 수 있고, 이것을 1레벨 스크램블링으로 사용할 수 있다.Alternatively, those skilled in the art can use the random number generated in the server in the next step after scrambling using the seed based on the MAC ID, and use it as one level scrambling.

당업자는 서버에서 생성된 랜덤한 숫자용 다운스트림 CRC 코드의 사용을 스크램블링의 2개 레벨로 대체할 수 있다. 따라서, 다운스트림 CRC 코드(170)는, 랜덤 숫자를 시드/키 생성자(516)로부터 CRC Calc 블록(510)으로 랜덤 숫자를 넘기는 대신 시드/키 생성자(516)에 넘겨진다. CRC 코드는 이미 다운스트림 데이터에 있고 어떤 추가적인 비트도 서버에서 생성된 랜덤 숫자를 전달할 필요가 없으므로 이것은 대역폭을 절약할 수 있는 장점이 있다. 상기 시스템은 다운스트림 CRC 코드 및 클라이언트 모뎀에 의하여 생성된 랜덤 숫자를 사용하도록 할 수 있다. 마찬가지로, 당업자는 본 발명의 교시내용을 클라이언트 모뎀에 의하여 생성된 랜덤 숫자 및 서버에 의하여 생성된 랜덤 숫자를 사용하는 시스템에 적용할 수 있다. 랜덤 숫자 사용 시의 단점은 이것이 데이터와 함께 넘겨져야만 하는 과부하를 증가시킨다는 것이다.Those skilled in the art can replace the use of the random CR downstream code generated by the server with two levels of scrambling. Accordingly, the downstream CRC code 170 is passed to the seed / key generator 516 instead of passing the random number from the seed / key generator 516 to the CRC Calc block 510. This has the advantage of saving bandwidth since the CRC code is already in the downstream data and no additional bits need to carry a random number generated by the server. The system may enable the use of downstream CRC codes and random numbers generated by the client modem. Similarly, one of ordinary skill in the art can apply the teachings of the present invention to a system using random numbers generated by a client modem and random numbers generated by a server. The disadvantage of using random numbers is that this increases the overhead that must be passed with the data.

당업자는 CRC에 기초한 스크램블링 및 랜덤 숫자에 기초한 스크램블링이 각 메시지에 적용되는 순서를 바꿀 수 있다. 상기 순서는 업스트림 및 다운스트림 프로세스 간에서 대칭적일 필요가 없다. 따라서, 업스트림 메시지는 CRC에 기초한 시드에 의하여 최초로 스크램블링 되고 그 후 랜덤 숫자에 기초한 시드에 의하여 최초로 스크램블링된 다운스트림 메시지와 함께 랜덤 숫자에 기초한 시드에 의하여 스크램블링되고, 그런 후에 CRC에 기초한 시드에 의하여 스크램블링된다.Those skilled in the art can change the order in which scrambling based on CRC and scrambling based on random numbers are applied to each message. The order need not be symmetrical between upstream and downstream processes. Thus, the upstream message is first scrambled by the seed based on the CRC and then scrambled by the seed based on the random number with the downstream message first scrambled by the seed based on the random number, and then scrambled by the seed based on the CRC. do.

요약하면, 클라이언트 링크 통신을 향한 각 서버용 시드의 이중 집합은 각 클라이언트(후술할 멀티캐스트 메시지의 경우를 제외하고) 및 각 패킷에 대하여 단일하다는 것을 유의하여야 한다. 일단 랜덤 숫자에 기초한 스크램블링이 업스트림 CRC 코드에 기초한 스크램블링에 추가되면, 스크램블링 패턴은 모든 패킷과 함께 동적으로 변화할 것이다.In summary, it should be noted that the dual set of seeds for each server for client link communication is single for each client (except for the multicast message described below) and for each packet. Once scrambling based on random numbers is added to scrambling based on upstream CRC codes, the scrambling pattern will change dynamically with every packet.

본 발명의 변형예는 , 상기 개시된 방법을 사용하여 상기 키를 넘겨서 DVB 랜덤화를 위한 시퀀스 시작점을 조정함으로써 참조된 '845 출원에 개시된 개선된 보안 방법을 향상시키는 방법이다. 이것은 스크램블링 단계의 하나에 추가하거나 택일적인 단계로서 사용될 수 있다. 이것은 DVB 랜덤화용 시퀀스 시작점의 동적인 변경을 제공할 수 있다는 점에서, '845 출원에서 제안된 방법을 향상시키게 된다. DVB 시퀀스 시작점을 제공하기 위하여 개시된 방법을 사용하는 것은 DVB 랜덤화용 시퀀스 시작점을 넘기기 전에 종래의 방법 하에서 보안 통신 세션을 설정할 필요를 완화한다. 선택적으로(또는 추가적으로), 개시된 발명은 스태틱 키(static key)또는 다이나믹 키의 집합(set of dynamic keys)을 넘겨서 여러가지 가능한 DVB 랜덤화 계획으로부터 특정 DVB 랜덤화 계획을 선택하게 하는데 사용될 수 있다.A variant of the present invention is a method of improving the improved security method disclosed in the referenced '845 application by adjusting the sequence starting point for DVB randomization by handing over the key using the method disclosed above. This can be used in addition to one of the scrambling steps or as an alternative step. This improves the method proposed in the '845 application in that it can provide a dynamic change of the sequence start point for DVB randomization. Using the disclosed method to provide a DVB sequence start point alleviates the need to establish a secure communication session under conventional methods before crossing the sequence start point for DVB randomization. Alternatively (or additionally), the disclosed invention can be used to pass a static key or a set of dynamic keys to select a particular DVB randomization scheme from various possible DVB randomization schemes.

본 발명의 바람직한 실시예는 스태틱 입력에 기초한 특별히 수정된 DVB 랜덤화를 통하여 추가적인 보안을 제공하는 '845 출원의 제안을 조합하지는 않았지만, '845 출원의 방법은 상술한 것처럼 이중 키 이중 스크램블링 방법을 사용하여 시스템에 보안 계층을 추가하는 것으로 동작할 수 있다.Although the preferred embodiment of the present invention does not combine the proposal of the '845 application that provides additional security through specially modified DVB randomization based on static inputs, the method of the' 845 application uses a dual key double scrambling method as described above. By adding a security layer to the system.

[멀티캐스트 메시지][Multicast message]

멀티캐스트 메시지는 소정의 클라이언트 모뎀의 집합에 송신된 데이터 패킷에 송신된 다운스트림이다. 이것은 모든 클라이언트 모뎀일 수도 있고, 하나 이상의 어떤 집합일 수도 있다. 멀티캐스트 메시지는 하나이상의 전화가 신호를 수신할 필요가 있는 전화 회의, 다중의 구독자에 대한 방송, 다수 플레이어의 게임 또는 다른 응용 등의 다양한 분야에 사용할 수 있다. 상기 멀티캐스트 메시지는 일반적으로 하나 이상의 클라이언트에 송신되므로, 어느 클라이언트도 서버로 응답을 반송할 수 없으며 그렇지 않으면 응답 메시지에 충돌이 일어날 것이다. 다운스트림에 송신된 데이터는 계속 스크램블링되어 있어야 하지만, 클라이언트 모뎀은 멀티캐스트 메시지에 응답할 수 없으므로 시드 워드는 업스트림 메시지에 의해 동적으로 선택될 수 없다.Multicast messages are downstream sent in data packets sent to a given set of client modems. This may be all client modems, or one or more sets of one or more. Multicast messages can be used in a variety of applications, such as conferences, where more than one phone needs to receive signals, broadcasting to multiple subscribers, multiplayer games, or other applications. Since the multicast message is generally sent to one or more clients, neither client can return a response to the server or a response message will crash. The data sent downstream must still be scrambled, but the seed word cannot be dynamically selected by the upstream message since the client modem cannot respond to the multicast message.

그 대신, 서버는 주어진 멀티캐스트 그룹용 하나 이상의 멀티캐스트 스크램블링 시드를 생성하고, 스크램블링으로 스크램블링 기술에 의하여 본질적으로 보호되는 특별한 메시지를 통하여 각 멀티캐스트 그룹 멤버인 클라이언트 모뎀에 시드용 키 또는 시드를 송신할 것이다. 다이나믹 시드를 갖지 않는 메시지를 언스크램블링하는 것을 더 어렵게 만들기 위하여, 시스템은 2개의 시드를 넘기도록 설정되고 따라서 멀티캐스트 메시지는 스크램블링의 2개 레벨에 의하여 보호된다. 따라서, 멀티캐스트 그룹으로의 전송은 이중 스크램블링에 의하여 보호되지만 동적이고 단일한 패킷 대 패킷(packet to packet) 스크램블링은 일어나지 않는다.Instead, the server generates one or more multicast scrambling seeds for a given multicast group, and sends a key or seed for seeding to a client modem that is a member of each multicast group through a special message that is essentially protected by the scrambling technique by scrambling. something to do. To make it more difficult to unscramble messages that do not have a dynamic seed, the system is set to hand over two seeds and thus the multicast message is protected by two levels of scrambling. Thus, transmissions to a multicast group are protected by double scrambling but no dynamic and single packet to packet scrambling occurs.

멀티캐스트 메시지를 사용하는 시스템은 다운스트림 데이터 서브 패킷의 어드레스 일부를 스크램블링하지 않는 경향이 있다. 서버로부터 클라이언트 모뎀으로 메시지용 레귤러 키(regular key)를 사용할 지 또는 스크램블링된 통신의 일부를 언스크램블링하기 위하여 시드를 생성하는 특정한 멀티캐스트 그룹용 특수 멀티캐스트 키를 사용할 지를 결정하기 위하여 클라이언트 모뎀은 스크램블링되지 않은 어드레스를 판독할 필요가 있다.Systems using multicast messages tend not to scramble some of the addresses of downstream data subpackets. The client modem may scrambling to determine whether to use a regular key for messages from the server to the client modem or a special multicast key for a specific multicast group that generates a seed to unscramble some of the scrambled communications. It is necessary to read an address that is not present.

[기타][Etc]

상기 기술에 능숙한 자들은 본 발명의 방법 및 장치가 다방면에 응용될 수 있고 본 발명의 이해를 촉진하기 위하여 든 특정한 실시예에 한정되지 않는다는 것을 인식할 것이다. 또한, 본 발명의 범위는 당업자들에게 알려진 것과 같이, 여기에 개시된 시스템 컴포넌트의 변형, 수정 및 대치하는 범위를 망라한다.Those skilled in the art will recognize that the methods and apparatus of the present invention can be applied in many respects and are not limited to the specific embodiments intended to facilitate the understanding of the present invention. In addition, the scope of the invention encompasses the scope of modification, modification and replacement of the system components disclosed herein, as known to those skilled in the art.

청구된 발명의 범위의 법적인 제한은 후술할 청구범위에 기재되어 있고 그것들의 법적인 등가물에까지 확장된다. 등가 여부에 대한 법적인 기준에 익숙하지 않은 자들은 미국 특허청 또는 이에 준하는 곳과 같은 본 특허를 부여한 특허기관에 등록된 사람에게 상담하여야 한다.The legal limitations of the scope of the claimed invention are set forth in the claims which follow, and extend to their legal equivalents. Those who are not familiar with the legal standards for equivalence should consult with those registered with the US Patent Office or its equivalent, or with the patent authorities granting this patent.

[용어집][Glossary]

FEC : 전송 에러 교정(Forward Error Correction)FEC: Forward Error Correction

IP : 인터넷 프로토콜(Internet Protocol)IP: Internet Protocol

MPEG : 엠펙(Motion Picture Experts Group : Digital Video Standards)MPEG: Motion Picture Experts Group: Digital Video Standards

DVB : 디지털 비디오 방송(Digital Video Broadcast)DVB: Digital Video Broadcast

CRC : 주기적인 중복 체크(Cyclic Redundancy Check)CRC: Cyclic Redundancy Check

PID : 패킷 식별자(Packet Identifier)PID: Packet Identifier

PRBS : 모의 랜덤 바이너리 시퀀스(Pseudo Random Binary Sequence)PRBS: Pseudo Random Binary Sequence

RF : 라디오 주파수(Radio Frequency)RF: Radio Frequency

US : 업스트림 또는 미국(Up Stream or United States)US: Upstream or United States

DS : 다운스트림(Down Stream)DS: Down Stream

[표 A]TABLE A

Claims (23)

특정 클라이언트 모뎀에 의하여 생성된 다이나믹 키의 사용을 통하여 공유된 통신 매체 상에서 업스트림 서버 및 적어도 2개의 다운스트림 클라이언트 모뎀 간의 통신을 위한 추가적인 보안을 유지하는 방법에 있어서,A method of maintaining additional security for communication between an upstream server and at least two downstream client modems on a shared communication medium through the use of a dynamic key generated by a particular client modem, the method comprising: A. 상기 서버가 제1 클라이언트 모뎀으로부터 스크램블링된 업스트림 통신을 수신하는 단계;A. the server receiving scrambled upstream communication from a first client modem; B. 상기 서버가 제1 클라이언트 모뎀으로부터 이전의 업스트림 통신에서 수신된 상기 제1 클라이언트 모뎀용 이전 키에 기초한 상기 제1 클라이언트 모뎀용 이전 시드를 사용하여 상기 제1 클라이언트 모뎀용 새로운 키를 포함하는 상기 업스트림 통신의 스크램블링된 부분을 언스크램블링하는 단계;B. The server includes a new key for the first client modem using a transfer seed for the first client modem based on the transfer key for the first client modem received in a previous upstream communication from the first client modem. Unscrambled scrambled portion of upstream communication; C. 상기 서버가 업스트림 통신의 언스크램블링된 내용에 기초한 상기 제1 클라이언트 모뎀용 상기 새로운 키에 기초한 상기 제1 클라이언트 모뎀용 새로운 시드를 생성하기에 충분한 정보를 저장하는 단계;C. storing sufficient information for the server to generate a new seed for the first client modem based on the new key for the first client modem based on the unscrambled content of upstream communication; D. 상기 서버가 제2 클라이언트 모뎀용 키에 기초한 상기 제2 클라이언트 모뎀용 시드에 기초한 스크램블링으로 상기 제2 클라이언트 모뎀으로의 다음 다운스트림 통신의 적어도 일부를 스크램블링하는 단계 - 여기서, 상기 제2 클라이언트 모뎀용 키는 상기 제1 클라이언트 모뎀용 키와는 무관함 -;D. the server scrambling at least a portion of the next downstream communication to the second client modem with scrambling based on a seed for the second client modem based on a key for a second client modem, wherein the second client modem The key is independent of the key for the first client modem; E. 상기 서버가 상기 제1 클라이언트 모뎀용 상기 새로운 키에 기초한 상기 제1 클라이언트 모뎀용 상기 새로운 시드에 기초한 스크램블링으로 상기 제1 클라이언트 모뎀으로의 다음 다운스트림 통신의 적어도 일부를 스크램블링하는 단계;E. scrambling, by the server, at least a portion of a next downstream communication to the first client modem with scrambling based on the new seed for the first client modem based on the new key for the first client modem; F. 상기 제1 클라이언트 모뎀이 상기 제1 클라이언트 모뎀으로의 다음 다운스트림 통신을 수신하는 단계;F. the first client modem receiving a next downstream communication to the first client modem; G. 상기 제1 클라이언트 모뎀이 제1 클라이언트 모뎀용 새로운 키에 기초한 제1 클라이언트 모뎀용 새로운 시드로 상기 제1 클라이언트 모뎀으로의 다음 다운스트림 통신의 스크램블링된 부분을 언스크램블링하는 단계;G. unscrambled scrambled portion of the next downstream communication to the first client modem with a new seed for the first client modem based on the new key for the first client modem; H. 상기 제1 클라이언트 모뎀이 상기 제1 클라이언트 모뎀용 다음 키를 포함하는 다음 업스트림 통신을 생성하는 단계;H. generating, by the first client modem, a next upstream communication comprising a next key for the first client modem; I. 상기 제1 클라이언트 모뎀이 상기 제1 클라이언트 모뎀용 다음 키에 기초한 상기 제1 클라이언트 모뎀용 다음 시드를 생성하기에 충분한 정보를 저장하는 단계; 및I. storing information sufficient for the first client modem to generate a next seed for the first client modem based on a next key for the first client modem; And J. 상기 제1 클라이언트 모뎀이 상기 제1 클라이언트 모뎀용으로 이전에 전달된 새로운 키에 기초한 상기 제1 클라이언트 모뎀용 새로운 시드를 사용하여, 다음 업스트림 통신의 적어도 일부를 스크램블링하는 단계를 포함하는 보안 유지 방법.J. Maintaining security comprising the first client modem scrambling at least a portion of a next upstream communication using the new seed for the first client modem based on a new key previously delivered for the first client modem. Way. 제1항에 있어서, 상기 제1 클라이언트 모뎀용 새로운 시드는 상기 제1 클라이언트 모뎀용 새로운 키와 동일한 보안 유지 방법.2. The method of claim 1, wherein the new seed for the first client modem is the same as the new key for the first client modem. 제1항에 있어서, 제1 클라이언트 모뎀용 새로운 키는 상기 업스트림 전송의정확도를 시험하기 위하여 사용된 전송 체크 워드이고, 상기 제1 클라이언트 모뎀용 새로운 키는 과부하없이 업스트림 통신과 함께 전송되는 보안 유지 방법.The method of claim 1, wherein the new key for the first client modem is a transmission check word used to test the accuracy of the upstream transmission, and the new key for the first client modem is transmitted with upstream communication without overloading. . 제1항에 있어서, 상기 제1 클라이언트 모뎀용 새로운 키는 상기 제1 클라이언트 모뎀에 의해 생성된 랜덤 숫자이고 전송 체크 워드가 아닌 보안 유지 방법.2. The method of claim 1 wherein the new key for the first client modem is a random number generated by the first client modem and not a transmission check word. 제1항에 있어서, 상기 업스트림 통신의 스크램블링된 부분은 데이터 패킷 헤더의 일부를 포함하는 보안 유지 방법.The method of claim 1, wherein the scrambled portion of the upstream communication comprises a portion of a data packet header. 제5항에 있어서, 상기 업스트림 통신의 스크램블링된 부분은 가변 길이의 데이터 패킷의 길이를 전달하는 필드를 포함하는 보안 유지 방법.6. The method of claim 5, wherein the scrambled portion of the upstream communication comprises a field carrying a length of a data packet of variable length. 제1항에 있어서, 상기 다음 다운스트림 통신의 필드에 디폴트 키에 기초한 디폴트 시드를 사용할 신호가 부족한 때에만, 상기 제1 클라이언트 모뎀이 상기 제1 클라이언트 모뎀용 새로운 키에 기초한 상기 제1 클라이언트 모뎀용 상기 새로운 시드로 상기 제1 클라이언트 모뎀으로의 다음 다운스트림 통신의 스크램블링된 부분을 언스크램블링하는 보안 유지 방법.2. The method of claim 1, wherein the first client modem is for the first client modem based on the new key for the first client modem only when the field of the next downstream communication lacks a signal to use a default seed based on a default key. Maintaining the scrambled portion of the next downstream communication to the first client modem with the new seed. 제7항에 있어서, 상기 디폴트 키는 상기 제1 클라이언트 모뎀의 어드레스에 기초한 보안 유지 방법.8. The method of claim 7, wherein said default key is based on an address of said first client modem. 제7항에 있어서, 상기 제1 클라이언트 모뎀으로부터 이전 업스트림 통신에서 수신된 제1 클라이언트 모뎀용 이전 키가 상기 디폴트 키에 기초하여 스크램블링되면서 송신되는 보안 유지 방법.8. The method of claim 7, wherein a previous key for a first client modem received in a previous upstream communication from the first client modem is transmitted while being scrambled based on the default key. 제1항에 있어서, 상기 서버 및 상기 제1 클라이언트 모뎀 간의 통신을 교환하는 예비적 단계를 더 포함하고, 상기 서버가 초기 제1 클라이언트 모뎀 키에 기초한 초기 제1 클라이언트 모뎀 시드를 생성하기에 충분한 정보를 저장할 때까지, 상기 예비적 통신의 일부가 디폴트 시드와 스크램블링되는 보안 유지 방법.2. The method of claim 1, further comprising a preliminary step of exchanging communication between the server and the first client modem, wherein the server is sufficient to generate an initial first client modem seed based on an initial first client modem key. The portion of the preliminary communication is scrambled with the default seed until the data is stored. 제1항에 있어서, 스크램블링된 값은 하나의 통신과 함께 넘겨지고 상기 값은 다음 통신의 DVB 랜덤화를 변경시키기 위하여 사용되고, 그에 따라 도청자는 표준이 아닌 DVB 랜덤화를 전환하기 위하여 상기 넘겨진 값을 필요로 하므로, 상기 DVB 랜덤화에서의 제어된 변화가 보안 층을 제공하여 도청자로부터 상기 다음 통신을 보호하는 보안 유지 방법.2. The scrambled value is passed along with one communication and the value is used to change the DVB randomization of the next communication, so that the eavesdropper uses the passed value to switch non-standard DVB randomization. As needed, a controlled change in the DVB randomization provides a security layer to protect the next communication from an eavesdropper. 제1항에 있어서,The method of claim 1, 상기 서버가 상기 제1 클라이언트 모뎀으로의 다음 다운스트림 통신에서 멀티캐스트 어드레스 키 및 멀티캐스트를 송신하는 단계;The server transmitting a multicast address key and a multicast in a next downstream communication to the first client modem; 상기 서버가 제2 클라이언트 모뎀으로의 다음 다운스트림 통신에서 동일한멀티캐스트 어드레스 키 및 멀티캐스트를 송신하는 단계; 및The server transmitting the same multicast address key and multicast in a next downstream communication to a second client modem; And 상기 서버가 상기 제1 클라이언트 모뎀 및 상기 제2 클라이언트 모뎀을 포함하여 멀티캐스트 그룹에 어드레싱된 멀티캐스트 통신을 생성하는 단계;The server generating a multicast communication addressed to a multicast group including the first client modem and the second client modem; 상기 서버가 상기 멀티캐스트 어드레스 키에 기초한 시드로 멀티캐스트 통신의 일부를 스크램블링한 후 상기 멀티캐스트 통신을 송신하는 단계를 더 포함하는 보안 유지 방법.And sending the multicast communication after the server scrambles a portion of the multicast communication with a seed based on the multicast address key. 제1항에 있어서, 상기 서버는 상기 제1 클라이언트 모뎀으로의 다음 다운스트림 통신의 적어도 일부를 시드로 스크램블링하는데, 상기 시드는The method of claim 1, wherein the server scrambles at least a portion of the next downstream communication to the first client modem, wherein the seed 상기 제1 클라이언트 모뎀용 새로운 키; 및A new key for the first client modem; And 상기 제1 클라이언트 모뎀용 새로운 키 앞에서 수신된 상기 제1 클라이언트 모뎀용 이전 키에 기초하는 보안 유지 방법.A method of maintaining security based on a previous key for the first client modem received before a new key for the first client modem. 서버에 의하여 생성된 다이나믹 키의 사용을 통하여 공유된 통신 매체 상에서 업스트림 서버 및 적어도 2개의 다운스트림 클라이언트 모뎀 간의 통신을 위한 추가적인 보안을 유지하는 방법에 있어서,A method of maintaining additional security for communication between an upstream server and at least two downstream client modems on a shared communication medium through the use of a dynamic key generated by the server, the method comprising: A. 상기 서버가 상기 서버에 의하여 생성된 제1 클라이언트 모뎀용 키에 기초한 제1 클라이언트 모뎀용 시드를 생성하기에 충분한 정보를 저장하는 단계 - 상기 제1 클라이언트 모뎀용 키는 다운스트림 통신에서 상기 제1 클라이언트 모뎀으로 전송됨 -;A. storing information sufficient for the server to generate a seed for the first client modem based on the key for the first client modem generated by the server, wherein the key for the first client modem is generated in the downstream communication. 1 sent to client modem-; B. 제2 클라이언트 모뎀이 상기 서버로부터 다운스트림 통신을 수신하는 단계;B. a second client modem receiving downstream communication from the server; C. 상기 제2 클라이언트 모뎀이, 상기 서버로부터 이전의 다운스트림 통신에 수신된 상기 제2 클라이언트 모뎀용 키에 기초한 상기 제2 클라이언트 모뎀용 시드를 사용하여, 상기 제2 클라이언트 모뎀용 새로운 키를 포함하는 다운스트림 통신의 스크램블링된 부분을 언스크램블링하는 단계;C. The second client modem includes a new key for the second client modem, using a seed for the second client modem based on the key for the second client modem received in a previous downstream communication from the server. Unscrambled scrambled portion of the downstream communication; D. 상기 제2 클라이언트 모뎀이 상기 다운스트림 통신의 언스크램블링된 내용에서 수신된 상기 제2 클라이언트 모뎀용 새로운 키에 기초한 상기 제2 클라이언트 모뎀용 새로운 시드를 생성하기에 충분한 정보를 저장하는 단계;D. storing sufficient information for the second client modem to generate a new seed for the second client modem based on the new key for the second client modem received in the unscrambled content of the downstream communication; E. 상기 제2 클라이언트 모뎀이 상기 제2 클라이언트 모뎀용 새로운 키에 기초한 상기 제2 클라이언트 모뎀용 새로운 시드에 기초하여 상기 서버로 다음 업스트림 통신의 적어도 일부를 스크램블링하는 단계;E. scrambling, by the second client modem, at least a portion of a next upstream communication to the server based on the new seed for the second client modem based on the new key for the second client modem; F. 상기 서버가 상기 제2 클라이언트 모뎀으로부터 다음 업스트림 통신을 수신하는 단계;F. the server receiving a next upstream communication from the second client modem; G. 상기 서버가 상기 제2 클라이언트 모뎀용 새로운 키에 기초한 상기 제2 클라이언트 모뎀용 상기 새로운 시드로 상기 제2 클라이언트 모뎀으로부터 다음 업스트림 통신의 스크램블링된 부분을 언스크램블링하는 단계;G. the server unscrambled a scrambled portion of a next upstream communication from the second client modem with the new seed for the second client modem based on the new key for the second client modem; H. 상기 서버가 상기 제2 클라이언트 모뎀용 다음 키를 포함하는 다음 다운스트림 통신을 생성하는 단계;H. generating, by the server, a next downstream communication comprising a next key for the second client modem; I. 상기 서버가, 상기 제1 클라이언트 모뎀 키에 기초한 상기 제1 클라이언트 모뎀용 시드를 생성하기에 충분한 이전에 저장된 정보와 충돌함이 없이, 상기 제2 클라이언트 모뎀용 다음 키에 기초한 상기 제2 클라이언트 모뎀용 다음 시드를 생성하기에 충분한 정보를 저장하는 단계; 및I. The second client based on a next key for the second client modem without conflicting with previously stored information sufficient for the server to generate a seed for the first client modem based on the first client modem key. Storing enough information to generate a next seed for the modem; And J. 상기 서버가 상기 제2 클라이언트 모뎀용으로 이전에 전달된 새로운 키에 기초한 상기 제2 클라이언트 모뎀용 새로운 시드를 사용하여, 다음 다운스트림 통신의 적어도 일부를 스크램블링하는 단계를 포함하는 보안 유지 방법.J. The server comprising scrambling at least a portion of a next downstream communication using the new seed for the second client modem based on the new key previously delivered for the second client modem. 특정 클라이언트 모뎀으로 송신되거나 상기 모뎀으로부터 송신된 통신의 다이나믹 이중 스크램블링 방법에 있어서,A dynamic dual scrambling method of communication transmitted to or transmitted from a specific client modem, the method comprising: A. 서버가 공유된 전송 매체 상에서 최초 클라이언트 모뎀의 존재 및 주소를 인식하는 단계;A. The server recognizes the presence and address of the original client modem on the shared transmission medium; B. 상기 서버가 제1 클라이언트 모뎀으로 어드레싱된 다운스트림 통신을 2개의 디폴트 스크램블링 시드에 기초한 2회 스크램블링된 다운스트림 통신의 일부로 생성 및 전송하는 단계 - 상기 다운스트림 통신은 디폴트 시드가 사용되었다는 것을 지시하는 제어 필드를 포함함 -;B. the server generating and sending the downstream communication addressed to the first client modem as part of the two scrambled downstream communications based on the two default scrambling seeds, the downstream communication indicating that a default seed was used. Including a control field; C. 상기 제1 클라이언트 모뎀이 상기 다운스트림 통신을 수신하고 상기 디폴트 시드가 사용되었다는 것을 인식하는 단계;C. the first client modem receiving the downstream communication and recognizing that the default seed has been used; D. 상기 제1 클라이언트 모뎀이 상기 디폴트 시드를 사용하여 상기 다운스트림 통신을 언스크램블링하는 단계;D. the first client modem unscrambled the downstream communication using the default seed; E. 상기 제1 클라이언트 모뎀이 업스트림 통신을 생성 및 전송하는 단계 -전송하기 전 상기 업스트림 통신은 2개의 디폴트 시드로 두 번 스크램블링되고, 상기 업스트림 통신의 스크램블링된 부분은 상기 제1 클라이언트 모뎀에 의하여 생성된 키를 포함함 -;E. The first client modem generates and transmits an upstream communication, wherein prior to transmission the upstream communication is scrambled twice with two default seeds, and the scrambled portion of the upstream communication is generated by the first client modem. Contains an embedded key-; F. 상기 서버가 상기 업스트림 통신을 수신하고, 상기 디폴트 시드를 사용하여 상기 업스트림 통신의 스크램블링된 부분을 언스크램블링하고, 상기 제1 클라이언트 모뎀에 의하여 생성된 키를 저장하는 단계;F. receiving, by the server, the upstream communication, unscrambled scrambled portion of the upstream communication using the default seed, and storing a key generated by the first client modem; G. 상기 서버가 상기 제1 클라이언트 모뎀에 의하여 생성된 키에 기초한 하나의 시드 및 하나의 디폴트 스크램블링 시드를 사용하여, 통신이 스크램블링되는 것을 지시하는 제어 필드로 상기 제1 클라이언트 모뎀에 어드레싱된 다운스트림 통신을 생성 및 전송하는 단계 - 상기 다운스트림 통신의 일부는 하나의 디폴트 시드와 1회 스크램블링되고 상기 제1 클라이언트 모뎀에 의하여 생성된 키에 기초한 하나의 시드와 1회 스크램블링 되며, 상기 다운스트림 통신의 스크램블링된 부분은 상기 제1 클라이언트 모뎀과 통신하기 위한 서버에 의하여 생성된 키를 포함함 -;G. downstream addressed to the first client modem with a control field indicating that the communication is to be scrambled using one seed and one default scrambling seed based on the key generated by the first client modem Generating and transmitting a communication, wherein the portion of the downstream communication is scrambled once with one default seed and scrambled once with one seed based on a key generated by the first client modem. The scrambled portion includes a key generated by the server for communicating with the first client modem; H. 상기 제1 클라이언트 모뎀이 상기 다운스트림 통신을 수신하고 상기 제어 필드를 판독하는 단계;H. receiving, by the first client modem, the downstream communication and reading the control field; I. 상기 제1 클라이언트 모뎀이 상기 다운스트림을 언스크램블링하는 단계;I. the first client modem unscrambled the downstream; J. 상기 제1 클라이언트 모뎀에 의하여 생성된 최종 전송된 키에 기초한 하나의 디폴트 시드 및 하나의 시드를 사용하여 통신하는 단계;J. communicating using one default seed and one seed based on the last transmitted key generated by the first client modem; K. 상기 제1 클라이언트 모뎀이 상기 제1 클라이언트 모뎀과 통신하기 위한 서버에 의하여 생성된 키를 저장하는 단계;K. storing the key generated by the server for the first client modem to communicate with the first client modem; L. 상기 제1 클라이언트 모뎀이 업스트림 통신을 생성 및 전송하는 단계 - 전송 전 상기 제1 클라이언트 모뎀에 의하여 생성된 새로운 키를 포함하는 상기 업스트림 통신의 일부는 상기 제1 클라이언트 모뎀에 의하여 생성된 최종 전송된 키에 기초한 하나의 시드 및 상기 제1 클라이언트 모뎀과 통신하기 위하여 생성된 최종 전송된 서버 생성 키에 기초한 하나의 시드를 사용하여 2회 스크램블링됨 -;L. generating and transmitting an upstream communication by the first client modem, wherein the portion of the upstream communication comprising a new key generated by the first client modem prior to transmission is the final transmission generated by the first client modem. Scrambled twice using one seed based on the generated key and one seed based on the last transmitted server generated key generated for communicating with the first client modem; M. 상기 서버가 상기 업스트림 통신을 수신하고, 상기 제1 클라이언트 모뎀에 의하여 생성된 이전에 저장된 키에 기초한 하나의 시드 및 상기 제1 클라이언트 모뎀과 통신하기 위하여 최종 전송된 서버 생성 키에 기초한 하나의 시드를 사용하여 상기 업스트림 통신을 언스크램블링하는 단계;M. The server receives the upstream communication, one seed based on a previously stored key generated by the first client modem and one based on a server generated key last transmitted for communicating with the first client modem. Using the seed to unscramble the upstream communication; N. 상기 서버가 상기 제1 클라이언트 모뎀에 의하여 생성된 최종 전송된 키를 저장하는 단계;N. storing, by the server, the last transmitted key generated by the first client modem; O. 상기 서버가 상기 제1 클라이언트 모뎀에 의하여 생성된 최종 전송된 키에 기초한 하나의 시드 및 상기 제1 클라이언트 모뎀과 통신하기 위하여 최종 전송된 서버 생성 키에 기초한 하나의 시드를 사용하여 통신이 스크램블링되는 것을 지시하는 제어 필드로 상기 제1 클라이언트 모뎀에 어드레싱된 다운스트림 통신을 생성 및 전송하는 단계 - 상기 다운스트림 통신의 일부는 상기 제1 클라이언트 모뎀에 의하여 생성된 최종 전송된 키에 기초한 하나의 시드와 1회 스크램블링되고 상기 제1 클라이언트 모뎀과 통신하기 위하여 최종 전송된 서버 생성 키에 기초한 하나의 시드와 1회 스크램블링 되며, 상기 다운스트림 통신의 스크램블링된 부분은 상기 제1 클라이언트 모뎀과 통신하기 위한 새로운 서버 생성 키를 포함함 -;O. The communication is scrambling using one seed based on the last transmitted key generated by the first client modem and one seed based on the last generated server generated key to communicate with the first client modem. Generating and transmitting a downstream communication addressed to the first client modem with a control field indicating which is to be established, wherein a portion of the downstream communication is one seed based on the last transmitted key generated by the first client modem. And scrambled once with a seed based on a server generated key that was last sent to communicate with the first client modem, wherein the scrambled portion of the downstream communication is new for communicating with the first client modem. Contains the server generated key-; P. 상기 제1 클라이언트 모뎀이 상기 다운스트림 통신을 수신하고 상기 제어 필드를 판독하는 단계;P. receiving, by the first client modem, the downstream communication and reading the control field; Q. 상기 제1 클라이언트 모뎀이 상기 제1 클라이언트 모뎀과 통신하기 위한 이전에 저장된 서버 생성 키에 기초한 하나의 시드 및 상기 제1 클라이언트 모뎀에 의하여 생성된 최종 전송된 키에 기초한 하나의 시드를 사용하여 상기 다운스트림 통신을 언스크램블링하는 단계;Q. One seed based on a previously stored server generated key for the first client modem to communicate with the first client modem and one seed based on the last transmitted key generated by the first client modem. Unscrambled the downstream communication; R. 상기 제1 클라이언트 모뎀이 상기 제1 클라이언트 모뎀과 통신하기 위한 최종 전송된 서버 생성 키를 저장하는 단계를 포함하며,R. storing the last transmitted server generated key for the first client modem to communicate with the first client modem, 상기 제1 클라이언트 모뎀 및 상기 서버간의 통신에서 중단을 탐지할 때까지 단계 G부터 K까지를 반복하고, 상기 중단이 탐지될 경우 단계 B로 가는 다이나믹 이중 스크램블링 방법.Repeating steps G through K until an outage is detected in the communication between the first client modem and the server, and going to step B if the outage is detected. 제15항에 있어서, 상기 제1 클라이언트 모뎀에 의하여 생성된 키는 전송 체크 워드인 다이나믹 이중 다이나믹 이중 스크램블링 방법.16. The method of claim 15 wherein the key generated by the first client modem is a transmission check word. 제15항에 있어서, 상기 디폴트 시드 중 적어도 하나는 상기 제1 클라이언트 모뎀과의 통신을 위하여 단독으로 사용되는 다이나믹 이중 스크램블링 방법.16. The method of claim 15 wherein at least one of the default seeds is used solely for communication with the first client modem. 제15항에 있어서, 상기 디폴트 시드 중 적어도 하나는 상기 제1 클라이언트 모뎀의 어드레스로부터 유도되는 다이나믹 이중 스크램블링 방법.16. The method of claim 15 wherein at least one of the default seeds is derived from an address of the first client modem. 제1 디바이스에 의하여 생성된 키 및 제2 디바이스에 의하여 생성된 키의 이중 키로 다이나믹 이중 키 스크램블링 시스템의 제1 디바이스에 의하여 사용된 키를 업데이트하는 방법 - 제1 디바이스에서 수신된 유입되는 통신이 상기 제1 디바이스에 대한 단일한 어드레스를 포함하고, 상기 유입되는 통신은 상기 제1 디바이스 및 상기 제2 디바이스 사이에 동적인 이중 키 스크램블링을 설정하는 시동 시퀀스의 완료를 지시하는 경우 상기 업데이트가 발생함 - 에 있어서,A method for updating a key used by a first device of a dynamic dual key scrambling system with a double key of a key generated by a first device and a key generated by a second device, wherein the incoming communication received at the first device is Wherein the update occurs when the incoming communication indicates completion of a startup sequence that establishes dynamic dual key scrambling between the first device and the second device; To A. 상기 제1 디바이스에 의하여 생성된 저장 키 및 상기 제2 디바이스에 의하여 생성된 저장 키로 상기 유입되는 통신의 스크램블링된 부분을 언스크램블링하는 단계;A. Unscrambled scrambled portion of the incoming communication with the storage key generated by the first device and the storage key generated by the second device; B. 상기 유입되는 통신의 스크램블링된 부분에서 수신된 상기 제2 디바이스에 의하여 생성된 키를 저장하는 단계;B. storing a key generated by the second device received at the scrambled portion of the incoming communication; C. 상기 제1 디바이스에 의하여 생성된 키를 생성하고, 유출되는 통신을 생성하는 단계;C. generating a key generated by the first device and generating an outgoing communication; D. 상기 제1 디바이스로부터의 저장 키 및 상기 제2 디바이스로부터의 저장 키로 상기 제1 디바이스에 의하여 생성된 키를 포함하는 상기 유출되는 통신의 부분을 스크램블링하는 단계;D. scrambling a portion of the outgoing communication that includes a key generated by the first device with a storage key from the first device and a storage key from the second device; E. 상기 제1 디바이스에 의하여 생성된 키를 저장하는 단계; 및E. storing a key generated by the first device; And F. 상기 유출되는 통신을 송신하는 단계를 포함하는 키의 업데이트 방법.F. Sending the outgoing communication. 제19항에 있어서,The method of claim 19, 상기 스크램블링 및 언스크램블링 연산에 사용된 상기 제1 디바이스에 의하여 생성된 저장 키는 상기 제1 디바이스에 의하여 생성된 가장 최근의 저장 키이고,The storage key generated by the first device used for the scrambling and unscrambling operations is the most recent storage key generated by the first device, 상기 스크램블링 및 언스크램블링 연산에 사용된 상기 제2 디바이스에 의하여 생성된 저장 키는 상기 제2 디바이스에 의하여 생성된 가장 최근의 저장 키인 키의 업데이트 방법.And a storage key generated by the second device used in the scrambling and unscrambling operations is the most recent storage key generated by the second device. 제19항에 있어서, 상기 스크램블링 및 언스크램블링 연산에 사용된 상기 제1 디바이스에 의하여 생성된 저장 키는 상기 제1 디바이스에 의하여 생성된 가장 최근의 저장 키가 아닌 키의 업데이트 방법.20. The method of claim 19, wherein the storage key generated by the first device used for the scrambling and unscrambling operations is not the most recent storage key generated by the first device. 제19항에 있어서, 상기 스크램블링 및 언스크램블링 연산에 사용된 상기 제2 디바이스에 의하여 생성된 저장 키는 상기 제2 디바이스에 의하여 생성된 가장 최근의 저장 키가 아닌 키의 업데이트 방법.20. The method of claim 19, wherein the storage key generated by the second device used for the scrambling and unscrambling operations is not the most recent storage key generated by the second device. 발명의 상세한 설명 및 참조 도면에 기재되고 설명된 발명.The invention described and described in the Detailed Description and Reference Drawings.
KR10-2003-7006281A 2000-11-08 2001-11-08 Data scrambling system for a shared transmission media KR20030048464A (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US24668400P 2000-11-08 2000-11-08
US60/246,684 2000-11-08
PCT/US2001/046461 WO2002039661A2 (en) 2000-11-08 2001-11-08 Data scrambling system for a shared transmission medium

Publications (1)

Publication Number Publication Date
KR20030048464A true KR20030048464A (en) 2003-06-19

Family

ID=22931760

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-7006281A KR20030048464A (en) 2000-11-08 2001-11-08 Data scrambling system for a shared transmission media

Country Status (8)

Country Link
EP (1) EP1334601A2 (en)
JP (1) JP2004523937A (en)
KR (1) KR20030048464A (en)
CN (1) CN1473423A (en)
AU (1) AU2002228799A1 (en)
CA (1) CA2425388A1 (en)
MX (1) MXPA03004031A (en)
WO (1) WO2002039661A2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100923858B1 (en) * 2007-12-04 2009-10-28 한국전자통신연구원 Cable network system and method for controlling security in cable network dynamic encrypted multicast session

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4235520B2 (en) * 2003-09-22 2009-03-11 株式会社リコー Information processing apparatus, printing apparatus, print data transmission method, printing method, print data transmission program, and recording medium
EP1821538A1 (en) * 2006-02-15 2007-08-22 Irdeto Access B.V. Method and system providing scrambled content
CN104158643B (en) * 2008-10-31 2017-08-15 Lg电子株式会社 The method for sending broadcast singal
WO2016149796A1 (en) * 2015-03-26 2016-09-29 Maxxian Technology Inc. Systems and methods for detecting and interfering with compromised devices and unauthorized device relocation in a communication network
KR102463555B1 (en) 2018-07-31 2022-11-07 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) Method, transmitter, structure, transceiver and access point for provision of multicarrier on-off keying signal

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL102394A (en) * 1992-07-02 1996-08-04 Lannet Data Communications Ltd Method and apparatus for secure data transmission
US5375169A (en) * 1993-05-28 1994-12-20 Tecsec, Incorporated Cryptographic key management method and apparatus
US5787483A (en) * 1995-09-22 1998-07-28 Hewlett-Packard Company High-speed data communications modem

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100923858B1 (en) * 2007-12-04 2009-10-28 한국전자통신연구원 Cable network system and method for controlling security in cable network dynamic encrypted multicast session
US8190887B2 (en) 2007-12-04 2012-05-29 Electronics And Telecommunications Research Institute Cable network system and method for controlling security in cable network encrypted dynamic multicast session

Also Published As

Publication number Publication date
AU2002228799A1 (en) 2002-05-21
CN1473423A (en) 2004-02-04
CA2425388A1 (en) 2002-05-16
EP1334601A2 (en) 2003-08-13
MXPA03004031A (en) 2004-05-05
WO2002039661A3 (en) 2003-02-20
JP2004523937A (en) 2004-08-05
WO2002039661A2 (en) 2002-05-16

Similar Documents

Publication Publication Date Title
US7308575B2 (en) Data scrambling system for a shared transmission media
US10091013B2 (en) Control of multicast content distribution
KR100782865B1 (en) Data transmission controlling method and data transmission system
CN1822545B (en) Method of controlling communication between a head-end system and a plurality of client systems
US5841864A (en) Apparatus and method for authentication and session key exchange in a communication system
US20080063195A1 (en) Method and system for encrypting or decrypting wmv streaming media
US6373952B2 (en) Data transmitting apparatus, data transmitting method, data receiving apparatus, data receiving method, data transmission apparatus, and data transmission method
NO160110B (en) Cable Television-TELECOMMUNICATIONS SYSTEM.
JPH0756831A (en) Method for transmission and reception of program for personal use
KR20060008976A (en) Transmission/reception system
JP2000138668A (en) Encipherment system for packet exchange circuit network based on digital chaos model
GB2417654A (en) Providing access to stored data by multiple home consumer appliances which support different data communication technologies
EP1481548B1 (en) Broadcast network access-management system and method for management of receivers operating within broadcast network
CN101252573A (en) Communication control device
JP2001127757A (en) Data reception method and data receiver
US20050047449A1 (en) Individual video encryption system and method
KR100860734B1 (en) Media stream multicast distribution method and apparatus
JP2007318451A (en) Voice communication terminal device, voice communication control method and voice communication terminal program
KR20030048464A (en) Data scrambling system for a shared transmission media
KR100670786B1 (en) Apparatus for providing selective IPTV service using user profile and method thereof
CN1295763B (en) Transmission system
JP4154753B2 (en) Data receiving apparatus and method
KR100779038B1 (en) Iptv system and channel establishing method using multi-channel streaming server
EP1499062B1 (en) Individual video encryption system and method
US20090150954A1 (en) Server and method for controlling customer premises cable modem based on configuration information

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid