KR100745438B1 - 액세스 제공 방법, 서비스 제공 방법 및 이를 실행하는프로그램을 갖는 컴퓨터 판독 가능한 기록 매체 - Google Patents

액세스 제공 방법, 서비스 제공 방법 및 이를 실행하는프로그램을 갖는 컴퓨터 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR100745438B1
KR100745438B1 KR1020050091050A KR20050091050A KR100745438B1 KR 100745438 B1 KR100745438 B1 KR 100745438B1 KR 1020050091050 A KR1020050091050 A KR 1020050091050A KR 20050091050 A KR20050091050 A KR 20050091050A KR 100745438 B1 KR100745438 B1 KR 100745438B1
Authority
KR
South Korea
Prior art keywords
uri
resource
request
access
encrypted
Prior art date
Application number
KR1020050091050A
Other languages
English (en)
Other versions
KR20060055314A (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 KR20060055314A publication Critical patent/KR20060055314A/ko
Application granted granted Critical
Publication of KR100745438B1 publication Critical patent/KR100745438B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 리소스 제공자 서버에서 리소스로의 액세스를 제어할 수 있는 장치 및 방법에 관한 것이다. 본 발명은, 리소스 숨기기 및/또는 액세스 제어 지원 제공을 위해 스테이트레스(stateless) 방법에 따라 URI(uniform resource identifier)의 일부를 암호화 또는 암호 해독할 수 있다. 암호화된 부분을 갖는 URI의 수신에 따라, 본 발명은 사전 결정된 키를 이용하여 암호화된 부분을 해독함으로써 해독된 세그먼트를 얻으며, 해독된 URI가 리소스 공급자 서버로 송신되기 전에 해독된 세그먼트로부터 추가 정보를 추출하며 해독된 URI를 형성한다. 또한 본 발명은 클라이언트 요청에 응답하여 클라이언트로 송신되기 전에 리소스 제공자 서버로부터의 URI를 암호화할 수 있다.

Description

액세스 제공 방법, 서비스 제공 방법 및 이를 실행하는 프로그램을 갖는 컴퓨터 판독 가능한 기록 매체{STATELESS METHODS FOR RESOURCE HIDING AND ACCESS CONTROL SUPPORT BASED ON URI ENCRYPTION}
도 1은 본 발명에 따른 URI의 일부를 인코딩하는 바람직한 실시예를 도시하고 있다.
도 2는 본 발명에 따른 URI의 일부를 디코딩하는 바람직한 실시예를 도시하고 있다.
도 3은 본 발명의 바람직한 실시예가 기능하는 방식을 개략적으로 도시하고 있다.
도 4는 본 발명을 특징짓는 다른 바람직한 실시예를 서비스로서 도시하고 있다.
도면의 주요부분에 대한 부호의 설명
20: URI 40: 투명 부분
50: 불투명 부분 100: 암호화 키
본 발명은 컴퓨터 네트워크의 정보 검색에 관한 것이며, 특히 웨사이트 상의 액세스를 제어하고 리소스 구조를 숨기는 방법에 관한 것이다.
인터넷에서의 많은 애플리케이션과 같은 월드 와이드 웹은 클라이언트/서버 모델을 채택하여 수많은 정보를 요청하는 최종 이용자에게 전송한다. 웹 서버는 웹 페이지 형태로 정보를 퍼트린다. 각 웹 페이지는 URI(Uniform Resource Identifier)라는 특수 식별자와 관련된다. URL(Uniform Resource Locator)는 서버로의 네트워크 경로를 식별하는 특별한 종류의 URI인데, 즉, URL은 리소스 위치를 지정한다. URL은 특정 정보로의 통신 경로를 정의하는 특별한 구문(syntax) 식별자이다. "페이지" 또는 "웹 페이지"라 불리는 클라이언트에 액세스 가능한 정보의 각 논리 블록은 URL에 의해 식별된다. URL은 주로 이용자의 웹 브라우저를 위한 범용의 일관된 정보 검색 및 액세스 방법을 제공한다. 브라우저는 클라이언트 머신에서 URL에 의해 식별되는 데이터 소스와 같은 데이터 소스 또는 서버에 정보를 요청할 수 있는 프로그램이다. 최종 이용자는 웹 페이지를 보기 위해 많은 상이한 브라우저 애플리케이션을 이용할 수 있으며, 하이퍼링크(링크), 버튼 또는 클라이언트에 의해 디스플레이되는 웹 페이지 상의 다른 도구를 클릭 또는 활성화시킴으로 요청을 개시할 수 있다. 또한, 이용자는 브라우저의 엔트리 필드(entry field)에 URL을 입력함으로써 요청을 개시할 수도 있다. 이 요청은 웹 애플리케이션 서 버 상에 위치되는 리소스를 식별하는 URL을 포함하지만, 클라이언트 또는 요청의 특성을 식별하는 기타 정보를 포함할 수도 있다.
웹 클라이언트의 웹 브라우저와 전자 상거래 웹 사이트 사이의 통신은, 텍스트, 그래픽 이미지, 오디오, 동영상 등과 같은 다양한 데이터 파일의 전송을 처리하는 잘 알려진 프로토콜인 HTTP(HyperText Transfer Protocol)에 기초한다. HTTP는 스테이트레스(stateless) 프로토콜인데, 이는 웹 클라이언트에 대한 정보가 한 요청에서 다음 요청으로 유지되지 않는다는 것을 의미한다.
웹-기반 애플리케이션은 클라이언트로부터의 일련의 관련 요청에 대해 유지해야 한다. 이러한 상태는 세션(session)이라 불린다. 세션 메니지먼트는 웹사이트가 상이한 요청 중에서 웹클라이언트를 기억하게 한다. 전형적으로, 세션 정보는 "쿠키(cookies)" 또는 숨겨진 형태 필드에 기록되거나 URL 재기록으로서 이 기술 분야에 잘 알려진 기술을 이용하여 URL에 저장된다. "쿠키"는, (객체 요청 시 이용되는) 하이퍼텍스트 전송 프로토콜("HTTP") 요청 메시지 및 (요청된 객체 제공 시 이용되는) 응답 메시지의 헤더 내의 다양한 길이로 전송되는 데이터 객체이다. 통상적으로, 쿠키는 영구적으로 또는 세션 지속기간 동안, 예를 들어, 고객의 온-라인 상인과 전자 쇼핑 상호 작용을 하는 동안에 클라이언트에 저장된다. 쿠키는 서버 애플리케이션이 특정 클라이언트에 대해 기억하기 원하는 어떤 데이터를 저장한다. 이는 클라이언트 식별, 세션 파라미터, 이용자 선호, 세션 상태 정보 등을 포함할 수 있으며, 당업자는 이를 인식할 것이다.
콘텐츠 제공자는, 다른 사람들이 그들에게 제공되는 웹 페이지의 콘텐츠를 필터링, 테일러링(tailoring) 또는 탬퍼링(tempering)하거나, 원하는 콘텐츠를 추 출 또는 집합시키는 것을 방지하기를 원할 것이다. 예를 들어, URI 패턴을 필터링함으로써, 이용자는, 웹 페이지를 방문하는 이용자들에게 정보적 웹 페이지를 제공하는 비용을 지원하는 광고와 같은 어떤 종류의 콘텐츠를 차단하기를 원할 것이다. 비용이 보전되도록 보장하는 이 방법에 있어서, 제공자의 콘텐츠는 보여져야 한다.
웹 서버는 서버의 내부 상태에 따라 동일한 URL에 의해 식별되는 웹 페이지 콘텐츠를 변경하기 위해 세션을 이용할 수 있다. 그러나, 세션이 웹 사이트로의 액세스를 제어하는 데 이용될 수 있지만, 서버는 모든 세션의 상태를 유지해야 한다. 세션의 지속기간 동안 세션 데이터는 서버 상에 저장되어야 하기 때문에, 서버가 소정 애플리케이션에 대해 이를 수행하는 것은 불가능하다. 쿠키는 세션 없는 액세스 제어를 수행하는 데 이용될 수 있으나, 많은 종류의 웹 트랜잭션에 대한 애플리케이션 상태 정보를 유지하는 주요 수단으로서 모든 경우에 의존할 수는 없다. 한가지로, 쿠키는 웹 클라이언트의 컴퓨터 또는 기타 클라이언트 장치 상에 저장되고 검색된다. 그러나, 어떤 클라이언트 컴퓨터는 쿠키를 저장할 수 없다. 이들은 (웹폰, PDA 등과 같은) 보급되는 무선 장치를 포함하는데, 이들은 "WSP"(Wireless Session Protocol)을 이용하는 "WAP"(Wireless Application Protocol) 게이트웨이를 통해 인터넷에 액세스할 수 있다. WSP는 쿠키를 지원하지 않는다. 또한, 쿠키-기반 시스템은 한 개체로부터 다른 개체로 URL을 공유 또는 전송하는 것이 바람직한 상황에서는 세션 없는 액세스 제어가 가능하지 않다. 쿠키-기반 시스템에서, 어떤 리소스는 단순히 URL에 의해서가 아니라 URL과 쿠키로 구성되는 쌍에 의해 식별된다. 이 URL과 쿠키 쌍으로 인해, 특정 리소스로의 세션 없는 액세스는 한 측(party)으로부터 다른 측으로 단순히 전자적으로 URL을 공유 또는 통신함으로써 쉽게 보장될 수 없다.
그러므로, 본 출원인은 웹 사이트 상에서 리소스 숨기기 및/또는 리소스로의 액세스 제어에 대한 스테이트레스 방법이 필요하다고 생각한다.
본 발명은 종래 기술을 개선시키며 전술한 바와 그 외의 문제점을 포함하는 종래 기술과 관련되는 많은 문제점을 해결한다. 본 발명의 목적 및 장점은 후술할 청구 범위의 특성에 의해 달성된다.
본 발명은 클라이언트로부터의 리소스 요청에 응답하여 리소스 제공자 서버의 리소스로 제어된 액세스를 제공하는 방법 및 장치를 제공하는데, 리소스 요청은 암호화된 부분을 갖는 URI를 포함한다. 본 발명의 방법은 사전 결정된 키를 이용하여 암호화된 부분을 해독하여 해독된 세그먼트를 얻는다. 추가 정보는 해독된 세그먼트로부터 추출되며, 추가 정보는 확인된다. 이 추가 정보는 무결성, 액세스 제어, 세션 관리 및/또는 애플리케이션 특정 목적을 지원하는 데이터일 수 있다. 이 방법은 해독화된 세그먼트의 적어도 일부를 갖는 해독된 URI를 유도하며 해독된 URI를 리소스 공급자 서버에 송신한다.
또한, 본 발명의 방법은 요청에 응답하는 리소스를 리소스 공급자로부터 수신하는 단계를 포함할 수 있다. 리소스는 투명 세그먼트와 불투명 세그먼트를 갖는 하나 이상의 암호화되지 않은 URI를 포함할 수 있다. 이 방법은 불투명 세그먼트의 적어도 일부를 암호화할 수 있으며 투명 세그먼트와 암호화된 부분을 갖는 암호화된 URI를 형성할 수 있다. 그 후, 암호화된 URI는 클라이언트에게 송신될 수 있다.
다른 양태에서, 본 발명은 외부 리소스 공급자 서버에 제어된 액세스를 가능하게 하는 서비스를 제공하는 방법에 관한 것이다. 이 양태에 따르면, 리소스에 액세스하기 위한 클라이언트로부터의 요청에 응답하여, 본 발명은 하나 이상의 트랜잭션 요구조건이 만족되는지를 판단하며, 만족되는 경우, 이 방법은 요청에 응답하는 URI를 생성한다. 이 URI는 사전 결정된 데이터 및 사전 결정된 구조를 포함한다. 또한, 본 발명은 URI의 적어도 일부를 암호화하며 요청에 응답하여 암호화된 부분을 갖는 URI를 송신한다. 따라서, 클라이언트는, 암호화된 정보를 갖는 URI를 제공하는 서비스 제공자로부터의 별도의 개체일 수 있는 외부 리소스 공급자 서버로의 액세스를 얻을 수 있게 된다.
다른 양태에서, 본 발명은 컴퓨터 프로그램 제품 또는 기계에 의해 판독 가능한 프로그램 저장 장치로서 구현될 수 있으며, 기계에 의해 실행될 수 있는 인스트럭션의 프로그램을 유형적으로 실시하여 전술한 방법을 수행한다.
본 발명의 이들 및 다른 목적, 특징과 장점은 첨부된 도면을 참조하는 다음의 상세한 설명으로부터 명백해질 것이다.
본 발명의 여러 바람직한 실시예를 설명할 것이다. 후술하는 설명은 본 발 명의 일례를 상세히 설명하기 위해 제공되는 것이며 발명 자체를 제한하는 것으로 이해되어서는 안된다. 오히려, 여러 변형은 상세한 설명에 이어지는 청구 범위에서 정의되는 본 발명의 범위 내에 해당할 것이다.
설명에 앞서, 본 발명의 설명을 돕기 위해 URI(Uniform Resource Identifiers) 및 그 구조의 잘 알려진 몇몇 양태를 설명한다. 이 기술 분야에 알려진 바와 같이, URL은 네트워크 위치의 표현을 통해 리소스를 식별하는 URI의 일종이다. URI는 웹 상에 리소스를 식별하는 연장 가능한 수단을 제공하는 압축된 문자열이다. URI의 구문 및 의미론은 RFC 2396에서 특정되는데, 이는 http://www.ietf.org의 IETF(Internet Engineering Task Force)에 의해 공개되는 사양이다. RFC 2396 사양은 모든 URI에 대한 일반적인 구문을 정의한다. 이어지는 설명에서, 본 발명의 방법이 적용되는 리소스 식별자의 일례로서 URL을 논의한다. "http:" URI 방안을 예로써 이용할 것이지만, ftp, nfs, afs, dav, mailto, rtsp, pnm, soap.beep 등과 같은 다른 방안에도 본 발명이 적용될 수 있다. 상이한 방안에 대한 포맷은 각종 명세서에서 발표되었으며, 이들의 공식 리스트는 IANA(Internet Assigned Numbers Autjority)에 의해 유지된다. URI 방안의 IANA 등록은 웹 <http://www.iana.org/assignments/uri-schemes>에서 이용 가능하다.
http의 경우, 이 방안에 대한 포맷은 IETF 사양 RFC 2616에 설명되어 있다 (웹 <http://www.ietf.org/ftc/rfc2616.txt>에서 이용 가능함). 즉, http에 대해 구조 <scheme>:<scheme-specific-part>는 http://<host>[:<port>][<abs_path>[?<query>]]로서 특정되는데, <host>는 이 기술 분야에 알려진 바와 같이 네트워크 호스트의 도메인 이름 또는 자신의 IP 어드레스를 지칭하며, <port>는 서버에 대한 네트워크 포트 번호를 지칭한다. <abs_path> 부분은 절대-경로 기준을 지칭하는데, 이는 단일 슬래쉬 문자("/")로 시작하는 상대 기준일 수 있으며, <query> 구성 요소는 소스에 의해 해석될 정보 문자열이다. []로 표시되는 부분은 필수적이지 않다.
프로토콜마다 대응 URI 구문이 존재한다. 이들 프로토콜 특정 정의는 반드시 투명 부분과 불투명할 수 있는, 즉, 서버에 의해서만 이해되어야 하는 부분을 구성한다는 공통점을 갖는다. HTTP의 경우, 투명 부분은 http://<host>[:<port>]이며 요청을 호스팅 서버에 전송하기위한 필요에 따라 프로토콜, 호스트 및 포트를 포함한다. URI의 나머지, 예를 들어, http 방안에 대한 [<abs_path>[?<query>]]는, 요청을 올바르게 전송하기 위해 필요하지 않으며 호스팅 서버에 의해서만 해석될 수 있으므로, 불투명 부분으로 지칭될 수 있다.
따라서, URI는 사람이 판독할 수 있는 계층 구조를 가지지만, 이 구조의 리소스 부분, 예를 들어 질의 구성요소는 전형적으로 리소스가 위치될 수 있는 서버 상의 디렉토리 구조에 대응한다. 자신에 대응하는 디렉토리 구조 및 리소스를 표시하는 웹 페이지로의 URI 또는 하이퍼링크 세트는 예를 들어 다음 형태로 나타낼 수 있다.
http://www.site.com/resource/2004/paper2.pdf
http://www.site.com/adv/images/cjdfrwe.jpg
http://www.site.com/pages/page2/html
위의 예에 도시된 바와 같이, 리소스의 계층 구조는 URI가 사람에 의해 판독 될 수 있으므로 명백할 수 있다.
본 발명은 URI의 암호화에 기초하여 스테이트레스 리소스 숨기기 및 웹 사이트에 대한 액세스 제어 지원을 제공하는 방법 및 컴퓨터 구현 인스트럭션을 제공한다. 이 방법은 스테이트레스 동적 URI 재기록을 암호 측정과 결합하여 이용한다. 본 발명에 따르면, URI의 불투명 부분이 서버에 의해 암호화될 수 있는 방법이 제공된다. http의 경우, 예를 들어, 이 방법은 <abs_path>, <query> 및/또는 가능한 추가 정보의 적어도 일부의 암호화를 제공한다.
이어지는 본 발명의 설명에서, http URI 방안을 일례로서 이용한다. 당업자는 이 방법이 불투명 부분(예: ftp, nfs, afs, dav, mailto, rtsp, pnm, soap.beep 등)을 포함하는 모든 URI 방안과 함께 이용될 수 있음을 인식할 것이다.
도면을 참조하면, 도 1은 본 발명의 바람직한 실시예에 따른 URI의 적어도 일부를 인코딩하는 방법에 대한 흐름도를 도시하고 있다. 도 1에 도시된 바와 같이, 이 방법(10)은 URI(20)를 수신함으로써 시작하는데, URL 구문 http://<host>[:<port>][<abs_path>[?query]]에 의해 예시된다. URI(20)는 투명 부분(40) 및 불투명 부분(50)으로 분할 또는 추출된다. 예시 URI(20)에 따르면, 투명 부분(또는 <transparent part>)은 http://<host>[:<port>]로서 표현될 수 있으며, 불투명 부분(50)은 [<abs_path>[?<query>]]로서 표현될 수 있다. 블록(60)에 표시된 바와 같이, 불투명 부분(50)은 추가 정보(70)와 결합될 수 있는데, 이는 예를 들어 클라이언트의 인터넷 프로토콜(IP) 어드레스, 타임스탬프(timestamp), 존속 시간(time-to-live), 매직 넘버, 논스(nonce), 시퀀스 카운터, 해시 값(hash value), 무결성 보장 수단 또는 기타 애플리케이션 특정 정보 등을 포함할 수 있으며, 당업자는 이를 인식할 것이다. 바람직하게는 불투명 부분(50)과 추가 정보(70)의 조합은 표준화된 문자열 포맷의 (50) 및 (70)의 기록을 유도할 것이며, 도 1에 <opaque part + info>(80)로서 나타나 있다.
<opaque part + info>(80) 또는 그 일부는 암호화 알고리즘(90)과 암호화 키(100)를 이용하여 암호화되어 <encrypted part>(110)를 형성할 수 있다. 당업자는 많은 산업 표준 또는 비표준 암호화 알고리즘 중 하나의 사용이 <opaque part + info>(80)의 문자열의 전부 또는 일부를 암호화하는 데 이용될 수 있음을 인식할 것이다. URI의 리소스를 숨기고 기타 정보를 지원하기 위해(후술할 것임), 전체 스트링 <opaque part + info>가 암호화될 수 있지만, 본 발명의 방법은 URI의 이 부분의 일부를 암호화할 것이다.
<encrypted part>(110)는 URI-인코딩(120)되어 <encoded encrypted part>(140)를 형성할 수 있다. URI 인코딩(120)은 암호화된 부분(110)이 문장론적으로 올바르며 URI 사양을 따르게 하는데, 예를 들어, 블록(120)은 URI에 존재해서는 안 되는 문자를 인코딩한다. 블록(130)에서, <encoded encrypted part>(140)는 <transparent part>(40)와 결합되어 원하는 대로 인코딩되는 URI(50)를 구성한다. 따라서, 도 1에 예시를 위해 도시된 바와 같이, URI는 블록(20)에서와 같이 http://<host>[:<port>][<abs_path>[?query]]와 같이 나타나는 구조로부터 블록(150)에서 http://<host>[:<port>][<encodedURL>]와 같이 나타타는 구조로 인코딩된다. 보다 일반적으로, <scheme>:<scheme-specific-part>로 표현되는 임의의 URI에 대해, 본 발명의 방법은 도 1을 참조하여 설명되는 바와 같이 <scheme-specific-part> 중 하나 이상의 부분을 암호화할 수 있다.
그러므로, 본 발명의 방법은 리소스로의 경로를 효율적으로 숨길 수 있으며, URI로의 중재적 정보의 변형-저항 추가(tamper- resistant adding)를 허용할 수 있다. 추가 정보는 예를 들어 리소스의 액세스 제어를 지원하는 데 이용될 수 있으며, 이는 상세히 후술할 것이다.
도 2를 참조하면, 서버가 전술한 바와 같이 암호화된 URI를 특징짓는 요청을 수신하면, 다음의 절차가 수행되어 <abs_path>, <query> 및/또는 이들과 인코딩될 수 있는 추가 정보를 결정 또는 디코딩할 수 있다. 블록(200)에서 시작하면, 인코딩된 URI가 수신되는데, 인코딩된 URI는 http://<host>[:<port>][<encodedURL>]에 의해 예시된다. [<encodedURL>]로 지칭되는 부분은 부분적으로 또는 전체적으로 인코딩될 수 있음을 유의해야 한다.
블록(210)에서, 인코딩된 URI의 무결성은 후술할 바와 같이 확인될 수 있으며, 인코딩된 URI의 투명 부분(220) 및 불투명 부분(230)은 추출된다. 도 2의 예에서 투명 부분(220)은 http://<host>[:<port>]에 의해 예시되며, 불투명 부분(230)은 <encoded encrypted part>(230)에 의해 예시된다. 불투명 부분(230)은 블록(240)에서 확인되고 URI-디코딩되어 <encrypted part>(250)를 형성한다.
블록(270)에서, <encrypted part>(250)는 암호 해독 키("키*")(260)를 이용하여 암호 해독된다. 이 키는*(260) 암호화 키(100)에 의해 암호화되는 정보를 해독하는 데 이용되며, 이는 도 1을 참조하여 전술하였다. 도 2로 넘어가면, 블록(270)의 암호해독 결과는 URI의 암호해독 부분(280)이며, <opaque part + info>에 의해 예시된다. 블록(290)에서, 암호해독된 부분(280)은 후술할 바와 같이 확인될 수 있다. 암호해독 부분(280)은 블록(290)에서 <opaque part>(300) 및 임의의 추가 정보(310)로 분할될 수 있는데, 추가 정보(310)는 IP 어드레스, 타임스탬프 및/또는 액세스 제어 정보, 또는 추가 정보(70)와 관련하여 전술한 바와 같은 기타 정보를 포함할 수 있다.
블록(320)에서, <opaque part>(300)와 <transparent part>(220) 모두가 이용되어 유효 URI(330)를 형성할 수 있다. 도 1에 따라 암호화되고 인코딩된 http://<host>[:<port>][<abs_path>[?query]](20)는 도 2에 따라 해독되고 디코딩되는 URI(330)에 대응한다는 점을 유의해야 한다. 이 URI(330)는 웹 서버에 전송되어 URI에서 식별되는 리소스를 검색할 수 있다.
도 2에서, 또한 블록(210),(240) 및/또는 (290)은 URI 또는 그 일부의 확인을 수행하여 문자열이 변형되지 않았음을 보장할 수 있다. 예를 들어, 확인은, URI의 리소스 부분이 예컨대, 이용자에 의해 선택적으로 변경되었는지의 여부, 또는 URI가 부적합한 액세스를 얻는 데 잘못 사용되었는지 여부, 또는 어떤 콘텐츠가 로봇과 같은 원치 않는 또는 허가되지 않은 개체에 의해 추출 또는 집합되었는지 여부를 판단하는 기능을 포함한다. 또한 추가 정보(310)는 URI 또는 그 일부의 무결성 또는 진정성을 확인하는 데이터를 포함할 수 있다. 예를 들어, 추가 정보(310)는 추가 정보(70)와 관련하여 전술한 바와 같이 매직 넘버, 시퀀스 카운터 또는 기타 정보를 포함할 수 있다. 당업자가 인식할 바와 같이, 매직 넘버는 해독된 정보가 요청 또는 예상되는 형태인지를 표시하는 것과 같이 다양한 방식으로 이용될 수 있다. 시퀀스 카운터는 후속 요청에 따라 증가하며 요청의 총 개수를 판단하는 데 유용하다.
전술한 URI 암호화 방안은 리소스 숨기기뿐만 아니라 URI에 추가 정보를 추가하는 변형-저항 방법도 제공한다. 요청되는 리소스로의 경로 숨기기는 정규의 표현을 통한 URI 일치 수단에 의한 웹 콘텐츠의 원치 않는 테일러링을 효율적으로 방지한다. 당업자가 인식할 수 있는 바와 같이, 정규의 표현은 URI와 같은 문자열의 패턴을 묘사하는 데 이용될 수 있다. 그러나, 본 발명에 따라 암호화된 URI는 일치될 수 있는 URI의 홈 이름 외에도 명백한 패턴을 갖지 않으므로, 각 요청에 따라 변하며, 결과적으로, URI 일치의 사용을 통한 웹 콘텐츠를 테일러링하려는 원치 않는 시도가 방지된다. 웹 콘텐츠의 원치 않는 테일러링의 예로는 콘텐츠의 추출 또는 집합 및 광고의 필터링이 있다.
URI로의 추가 정보의 변형-저항 추가는 많은 목적을 제공할 수 있다. 하나의 목적은 요청되는 리소스 상에 액세스 제어를 지원하는 것이다. URI에 추가되는 존속 기간 값은 예를 들어 제한된 양의 시간 동안 리소스의 액세스 가능성을 제어하는 데 이용될 수 있다. 소스-IP 어드레스 또는 소스-IP 어드레스 범위를 URI에 추가하는 것도 리소스가 액세스될 수 있는 곳을 제어하는 데 이용될 수 있다. 또한, 조작은 자동적으로 그 URI를 무효화시키므로 변형방지 URI는 다른 유효 URI에 대한 프로빙(probing)을 방지한다. 따라서, 본 발명은 유효 URI가 상이한 유효 URI를 발생시키도록 변형될 수 없도록 채택될 수 있다.
유리하게는, 본 발명의 방법은 각 웹 애플리케이션을 변경하지 않고 웹 서버에서 쉽게 구현될 수 있다. 본 발명은 주지의 클라이언트 소프트웨어 및 인터넷 인프라스트럭쳐를 따른다. 또한, 본 발명에 의한 방법은 서버 측에서 스테이트레스이다. 본 발명의 이러한 측면은 본 발명이 적은 리소스 사용으로 쉽게 구현될 수 있게 하며, (상태 공유가 없으므로) 밸런스 로딩을 쉽게 한다.
또한, 본 발명에 따른 인코딩된 정보 및/또는 변형-저항 정보를 포함하는 URI는, 쿠키의 사용을 요구하는 종래 기술과 반대로, 이메일, 즉각적인 메시징 등에 의해 한 개체에서 다른 개체로 쉽게 전송될 수 있다. (쿠키-기반 시스템에서와 같이) 리소스를 식별하기 위해 URI와 쿠키 모두를 요구하는 대신, 본 발명의 방법은 단지 인코딩되었거나 변형 저장 정보와 결합된 URI에 의해서 리소스가 식별되는 세션 없는 액세스 제어를 가능하게 한다.
본 발명의 다른 양태는 프라이버시 보호에 관한 것이다. 예를 들어, 네트워크 운영자와 중간 매개자는 서버로의 모든 액세스의 세부 사항을 기록하는 기능을 갖는 것이 알려져 있다. 본 발명에 따라 암호화된 URI의 로깅(logging)은 효율적이지 못한데, 왜냐면 URI의 계층적, 사람이 판독 가능한 구조가 한 개체가 다른 사람에게 노출하고 싶지 않은 소정 정보를 숨기고 보호하는 플랫, 램덤 구조로 변환되기 때문이다.
이제 도 3을 참조하면, 본 발명의 일실시예는 웹 콘텐츠의 제공자와 소비자 모두에 투명하며, URI를 암호화하고 해독할 수 있는 웹 서버 모듈(400)로서 구현될 수 있다.
웹 서버(410)가 암호화된 URI를 이용하는 클라이언트(430)로부터 요청(420)을 수신하면, 이 URI는 도 2를 참조하여 전술한 방법에 따라 암호 해독/디코딩된다(440). 또한, 해독된 URI는 확인될 수 있으며(도시 생략) 추가 정보(450)와 함께 적합한 처리자(460)로 전송된다. 웹 애플리케이션일 수 있는 이 처리자(460)는 액세스 제어 또는 웹 콘텐트 테일러링을 위해 추가 정보를 이용할 수 있다. 본 실시예에 따르면, 요청을 처리하는 애플리케이션(460)은 발명적 URI 암호화 방법이 수행되는 것을 인지할 필요가 없다.
클라이언트 요청(420)의 처리자(460)에 의해 생성되는 응답(470)은 요청 클라이언트(430)로 전송되기 전에 웹 서버(410)의 모듈(400)에 의해 프로세싱될 수 있다. 예를 들어, 응답(470)은 하나 이상의 URI가 포함되는 HTML 페이지 형태일 수 있다. 응답(470)에서 발견되는 하나 이상의 URI의 하나 이상의 부분은, 바람직하게는 도 1을 참조하여 전술한 방법을 이용하여 구성 가능한 정책에 따라, 응답(470)으로부터 추출되며(490,500) 모듈(400)에 의해 암호화/인코딩될 수 있다.
용어 "URI 암호화" 및 "암호화된 URI"는 도 1 및 도 2를 참조하여 전술한 방법의 양태를 지칭하기 위해 편의상 사용된다는 것을 이해하여야하며, <scheme>:<scheme-specific-part>에 의해 표현되는 URI는 암호화되고 인코딩된(도 1) 또는 암호 해독되고 디코딩된(도 2) <scheme-specific-part>의 하나 이상의 부 분을 가질 수 있다.
본 발명의 다른 실시예에 따르면, 제공되는 콘텐츠를 발생시키는 웹 애플리케이션은 URI 암호화의 기술을 인지할 수 있으며 웹 서버에 독립적으로 원하는 URI를 암호화하고 해독할 수 있다. 애플리케이션은 그 자체로 암호화 및 해독을 수행할 수 있거나, 자신의 애플리케이션 서버의 추가적 특수 기능성으로 이를 송신하거나 특수 툴 또는 본 발명의 발명을 수행하는 API를 이용할 수 있다.
다른 실시예에 따르면, 본 발명은 도 4에 도시된 바와 같은 서비스로 특징지어 질 수 있다. 본 발명은 서비스 제공자(600)가 암호화된 URI를 전자 티켓으로서 리소스 제공자 개체(610)에 의해 별도로 제공되는 소정 리소스에 제공할 수 있게 한다. 리소스 제공자 개체는 예를 들어, 웹 페이지, 데이터 파일, 음악, 이미지, 스트리밍 미디어 등과 같은 URI 이용을 통해 얻어질 수 있는 임의의 종류의 리소스를 제공할 수 있다. 서비스 제공자(600), 예를 들어 중개인 또는 판매인은 리소스 제공자 개체(610)를 대신하여 전자 티켓을 소정 가격 또는 상업적 제공의 일부로서 공급할 수 있다. 전자 티켓은, 예를 들어 발신 및 유효 시간을 포함하는, 리소스가 액세스를 제공하는 데 및/또는 이용자가 액세스를 보장하는 데 필요한 모든 정보를 포함할 수 있다. 이 정보는 전술한 바로부터 상기할 수 있는 바와 같이, 액세스 제어에 관한 추가 정보(예: 70,130)를 포함할 수 있는 URI의 암호화된 부분에 포함될 수 있다. 이 정보는 암호화되기 때문에, 숨겨지며, 변형 저항이고, 이용자 또는 인가되지 않은 개체가 이를 변형하는 것을 방지한다.
본 발명의 이 실시예에 따르면, 모든 필요한 정보는 전자 티켓 내에 제공된다. 그러므로, 티켓의 발신자(600)는 주어진 리소스로의 액세스를 제공하는 웹 서버(610)와 접속될 필요가 없다. 예를 들어, 판매인, 중개인 또는 기타 서비스 제공자(600)는, 구매자(620)와, 콘텐츠 제공자 또는 리소스 제공자의 특정 리소스 또는 웹 서버(610)에서 이용 가능한 콘텐츠로의 액세스를 요청(630)하거나 구매하는 이용자와 상호 작용할 수 있다. 서비스 제공자 또는 중개인은 전술한 방법에 따라 암호화되는 URI를 제공함으로써 요청에 응답(640)하거나 구매한다. URI는 웹 페이지 제공하는 것과 같은 여러 주지의 방법 중 하나를 통해, 또는 이메일, 즉각적 메시징, SMS 등을 통해 요청자(620)와 쉽게 통신할 수 있다. 암호화된 URI는 특정 시간에 특정 서비스 레벨에 따라, 또는 예를 들어 무선 또는 보급되는 연산 장치와 같은 클라이언트 장치로 테일러링될 수 있는 특정 방식으로, 하나 이상의 특정 리소스에 액세스를 제공하는 정보를 포함할 수 있다.
외부 리소스 공급자 서버(610)에서 리소스에 액세스하기 위한 요청(630)을 수신함에 따라, 서비스 제공자(600)(또는 "전자 티켓 발신자")는 우선 어떤 트랜잭션 요구조건이 만족되었는지를 판단해야 한다. 트랜잭션 요구조건은 지불 및/또는 요청이(620)이 서비스 제공자(600) 및/또는 610의 리소스에 액세스할 수 있는지를 판단하는 다른 요구조건일 수 있다. 예를 들어, 서비스 제공자(600)는 지불을 수신하기 위해 요청자(620)와 상호 작용하거나, 지불이 이루어졌는지 또는 요청되는 액세스에 대해 이루어져야 하는지를 판단할 수 있다. 또한, 서비스 제공자(600)는 리소스에 대해 클라이언트 요청을 제공하며 데이터 기억 장치(도시 생략)에 트랜잭션 데이터를 저장하는 데 이용되는 하나 이상의 제공 프로세스(도시 생략)를 포함한다.
전자 티켓 발신자(600)는 그 후 사전 결정된 키를 이용하여 클라이언트(620)에 의해 리소스 제공자(610)의 리소스(670)를 요청(650)하는 데 후속적으로 이용될 수 있는 사전 결정된 구조를 갖는 URI를 생성할 수 있다. 서비스 제공자(600) 및 리소스 제공자(610)에 의해 이용되는 사전 결정된 키는 대칭 또는 비대칭 키일 수 있다(각각 도 1 및 2의 키(100, 260) 참조). 따라서, 서비스 제공자(600)가 나중에 URI를 이용하여 리소스 공급자 서버(610)의 URI를 이용하여 리소스(670)로의 액세스(650)를 구하는 서비스 제공자(600)에게 암호화된 URI를 요청자(620)에게 발신하면(640), 리소스 제공자(610)는 사전 결정된 키를 이용하여 URI를 해독한다.
URI의 구조 및 암호화 키는 서비스 제공자(600) 및 리소스 공급자(610)에 의해 사전 결정될 수 있어서, 리소스 공급자는 소정 요구조건이 만족되었음을 확인할 수 있다. 예를 들어, 사전 결정된 구조는, 요청자가 리소스로의 액세스에 대해 지불하였음, 또는 요청자가 18세 이상임, 또는 요청자가 특정 시간 주기 동안 리소스로의 액세스를 얻었음, 또는 특정 서비스 레벨이 특정되었음 등의 표시를 포함할 수 있다. 전형적으로 키와 구조의 특성은 서비스 제공자(600)가 전자 티켓을 요청자(620)에게 발신(640)하기 전에 중개인(600)과 리소스 제공자(610) 사이에 마련(arrange)(660)될 수 있다. URI의 사전 결정된 구조는 보다 일반적으로 사전 결정된 데이터 지원 무결성, 액세스 제어, 세션 관리, 및/또는 애플리케이션 특정 목적을 포함할 수 있다.
보호되는 리소스로의 위치가 주어지면, 서비스 제공자(600)는 전술한 바와 같이 본 발명에 따른 암호화된 URI를 생성한다. 그 후 서비스 제공자(600)는 암호화된 URI를 요청자(620)에 송신 또는 발신(640)한다.
암호화된 URI의 수신에 따라, URI를 선택하여, 클릭 또는 다르게 활성화시킬 수 있으며, 이는 리소스 제공자 서버(610)에서 이용 가능한 어떤 원하는 콘텐츠 또는 리소스로의 링크를 제공한다. 본 발명 이 양태에 따르면, 이 리소스의 액세스를 제공하는 웹 서버(610)는, 암호화된 URI를 발신(640)하는 서비스 제공자 개체(600)와 직접 링크를 가질 필요가 없다. 리소스 제공자(610)는 요청자(620)에 리소스를 제공(670)하기 전에, 전술한 발명적 방법에 따라, 독립적으로 URI를 해독하거나, 액세스가 허가되는지 여부를 판단하거나, URI 내에 포함되는 정보를 확인하거나, 선택적으로 URI를 암호화할 수 있다. 예를 들어, 바람직하게는, 리소스 제공자(610)는, 전술한 바와 같이, URI를 암호화하는 개체(600)에 의해 이용되는 구성에 대응하는 키 또는 암호화 또는 해독 구성을 이용한다. 중개인 또는 서비스 제공자(600)와 리소스 제공자(610)는 전자 티켓의 제공(640)이 리소스의 제공(670)으로부터 해제되는 서비스 관계(660)를 적당히 설치한다.
또 다른 실시예에서, 본 발명은 콘텐츠 제공자 서버에 의해 이용되어 로봇 또는 다른 침입자의 검출을 지원할 수 있다. 예를 들어, 웹 사이트를 브라우징하고 그 콘텐츠를 다운로딩하는 등과 같은 반복적 태스크를 자동화하도록 다양한 개체에 의해 인터넷 상에서 로봇이 이용된다. 로봇의 동작은 다른 정규의 이용자의 동작과 유사하기 때문에, 검출하기 어렵다. 본 발명은 콘텐츠 제공자에 의해 이용되어 그 URI의 숨겨진 "오염(taint)"을 인코딩함으로써 로봇 검출을 지원할 수 있다. 이 오염은 본 발명에 따라 암호화되는 URI에 포함되므로, 클라이언트가 복수의 IP 어드레스를 이용하더라도, 동일한 웹 페이지로부터 발신되는 복수의 요청을 상호 관련시키는 것을 가능하게 한다.
다른 실시예에서, 변형 방지 파라미터를 URI에 추가하는 데 본 발명의 방법이 이용될 수 있다. URI로의 유용한 파라미터는 요청되는 리소스의 만료 시간이다. URI에 추가되는 파라미터를 암호화함으로써, 리소스 제공자는 제한된 양의 시간 동안 고객에게 임의의 콘텐츠로의 액세스를 제공할 수 있다. 만료 시간 또는 날짜가 경과한 후 요청자가 리소스에 액세스하기 위해 암호화된 파라미터를 갖는 URI를 이용하는 경우, 본 발명의 방법은 URI 파라미터를 해독하고, 그 유효성 체크를 수행하며, 액세스를 거부하는 데 이용될 수 있다. 선택적으로, 리소스 제공자 서버는 요청자에게 더 긴 액세스를 구입할 기회를 제공하는 다른 웹 페이지로 요청자를 재유도할 수 있다.
또한, 본 발명은 본 발명의 URI 암호화 방법을 이용하여 제어된 방식으로 제공되는 리소스의 공평한 이용을 보장하는 것을 돕는 데 이용될 수도 있다. 예를 들어, 고객이 어떤 리소스, 예를 들어, 온라인 사전 도는 게임으로의 액세스를 구입하는 경우, 이 리소스를 위치시키고 액세스하는 데 이용되는 URI가 고객에게 제공된다. 본 발명의 방법을 이용하면, 고객의 IP 어드레스가 URI의 암호화된 부분에 추가될 수 있다. 이 방식으로 URI를 발신함으로써, 리소스 제공자는 고객이 그의 액세스를 다른 미지불 이용자와 공유하는 것을 방지하는데, 이것은 이 액세스가 URI의 암호화된 부분 내에 포함되는 IP 어드레스로부터의 요청만을 인가하기 때문이다.
또한, 본 발명은 URI에서 전형적으로 명백한 디렉토리 구조를 숨기는 데 이용될 수 있으므로, 본 발명은 이용자가 URI를 즈측(guessing)하는 것을 방지하며 대신에 이용자들이 하이퍼링크를 이용하도록 요구한다. 또한, 리소스 제공자가 이용자가 광고와 같은 콘텐츠를 차단하는 것을 방지하기 원하는 경우, 이를 달성하는 데 본 발명이 이용될 수 있다. 암호화된 URI는 무작위로 나타나므로 선택적 콘텐츠 차단을 위한 논리 구조의 원치 않는 이용 또는 변형을 방지한다. 또한, 암호화된 URI는 스테이트레스이므로, 주요 스포츠 경기를 위한 웹 서버와 같은 극도로 높은 부하 하의 서버에서 이용될 수 있다.
본 발명의 바람직한 구현의 하나는, 애플리케이션 즉, 예를 들어 컴퓨터의 RAM에 상주할 수 있는 코드 모듈의 인스트럭션 세트(프로그램 코드)이다. 컴퓨터에 의해 요구될 때까지, 인스트럭션 세트는 다른 컴퓨터 메모리, 예를 들어 하드 디스크 드라이브 상에, 또는 광 디스크(긍극적으로는 CD ROM드라이브에 사용되는) 또는 플로피 디스크(긍극적으로는 플로피 디스크 드라이브에 사용되는)와 같은 제거 가능한 메모리에 저장되거나, 인터넷 또는 다른 컴퓨터 네트워크를 통해 다운로드되거나, 예를 들어 무선 주파수와 광 파장 전송과 같은 전송 형태를 이용하는 디지털 아날로그 통신 링크, 유무선 통신 링크과 같은 임의의 전송형 매체를 통해 분배될 수 있다. 따라서, 본 발명은 컴퓨터에서 사용하기 위한 컴퓨터 프로그램 제품으로서 구현될 수 있다. 또한, 설명한 다양한 방법은 통상적으로 소프트웨어에 의해 선택적으로 활성화되거나 재구성되는 범용 컴퓨터에서 구현되지만, 당업자는 이 방법이 하드웨어, 펌웨어 또는 필요한 방법 단계를 수행하도록 구성되는 특수한 장치에서 수행될 수 있음을 인식할 것이다.
또한, 당업자는 본 발명의 방법은 하나 이상의 프로그램을 포함하는 기계 판독 가능한 매체를 갖는 제조물에 의해 실행될 수 있음을 인식할 것이다. 또한, 본 발명은 예를 들어 콘텐츠 또는 서비스 제공자, 또는 콘텐츠 또는 서비스 요청자, 중개인 및/또는 중간 매개자와 같은 사람들 대신에 데이터 통신 네트워크 구성 요소에 의해 수행될 수 있는 방법을 설명하는 것을 인식할 것이다.
본 발명의 설명은 도시를 위해 제공된 것이며 개시된 형태로 본 발명을 제한하기 위한 것이 아니다. 본 발명의 범위를 벗어나지 않고 많은 수정과 변형이 당업자에 의해 이루어질 수 있을 것이다. 도시된 바람직한 실시예는 본 발명의 원리를 잘 설명하기 위하여 선택된 것이며, 예상되는 특정한 사용에 적합하게 다양하게 수정되는 실시예를 이해시키기 위한 것이다.
본 발명은 URI의 암호화에 기초하여 스테이트레스 리소스 숨기기 및 웹 사이트에 대한 액세스 제어 지원을 제공하는 방법 및 컴퓨터 구현 인스트럭션을 제공한다.

Claims (21)

  1. 리소스 제공자 서버의 리소스에 제어된 액세스를 제공하는 방법으로서,
    클라이언트로부터의 리소스 요청에 응답하여 - 상기 리소스 요청은 암호화된 부분을 갖는 URI(uniform resource identifier)로 이루어짐 -, 사전 결정된 키(key)를 이용하여 상기 암호화된 부분을 암호 해독함으로써 암호 해독된 세그먼트를 얻는 단계와,
    상기 암호 해독된 세그먼트로부터 추가 정보를 추출하는 단계와,
    상기 추가 정보를 확인하는 단계와,
    상기 암호 해독된 세그먼트의 적어도 일부를 갖는 암호 해독된 URI를 유도하는 단계와,
    상기 암호 해독된 URI를 리소스 공급자 서버로 전송하는 단계를 포함하는
    액세스 제공 방법.
  2. 제 1 항에 있어서,
    상기 추가 정보는 무결성, 액세스 제어, 세션 관리 및 애플리케이션 특정 목적 중 적어도 하나를 지원하는 데이터를 포함하는
    액세스 제공 방법.
  3. 제 1 항에 있어서,
    상기 추가 정보를 확인하는 단계는,
    상기 추가 정보에 포함되는 액세스 제어 세부 사항을 데이터 기억 장치에 저장되는 액세스 제어 데이터와 비교하는 단계를 포함하는
    액세스 제공 방법.
  4. 삭제
  5. 삭제
  6. 제 1 항에 있어서,
    리소스 공급자 서버로부터, 상기 요청에 응답하는 리소스를 수신하는 단계와 - 상기 리소스는 투명 세그먼트 및 불투명 세그먼트를 갖는 하나 이상의 암호화되지 않은 URI를 포함함 - ,
    상기 불투명 세그먼트의 적어도 일부를 암호화하는 단계와,
    상기 투명 세그먼트 및 상기 암호화된 부분을 이용하여 암호화된 URI를 형성하는 단계를 포함하는
    액세스 제공 방법.
  7. 청구항 7은(는) 설정등록료 납부시 포기되었습니다.
    제 6 항에 있어서,
    상기 불투명 세그먼트 및 기타 추가 정보로부터 결합된 세그먼트를 형성하는 단계와,
    상기 결합된 세그먼트를 암호화하여 상기 암호화된 부분을 형성하는 단계를 더 포함하는
    액세스 제공 방법.
  8. 삭제
  9. 청구항 9은(는) 설정등록료 납부시 포기되었습니다.
    제 6 항에 있어서,
    상기 암호화된 URI를 상기 클라이언트에 전송하는 단계를 더 포함하는
    액세스 제공 방법.
  10. 삭제
  11. 제 1 항 내지 제 3 항, 제 6 항, 제 9 항 중 어느 한 항에 기재된 방법의 각각의 단계를 수행하는 컴퓨터 프로그램을 갖는
    컴퓨터 판독 가능한 기록 매체.
  12. 제어된 액세스를 가능하게 하는 서비스를 외부 리소스 공급자 서버에 제공하는 방법으로서,
    리소스에 액세스하기 위한 클라이언트로부터의 요청에 응답하여, 하나 이상의 트랜잭션 요구조건이 만족되는지를 판단하는 단계와,
    상기 하나 이상의 트랜잭션 요구조건이 만족되는 경우, 상기 요청에 응답하여 URI(uniform resource identifier)를 생성하는 단계와 - 상기 URI는 사전 결정된 구조의 사전 결정된 데이터를 포함함 - ,
    상기 URI의 적어도 일부를 암호화하는 단계와,
    상기 요청에 응답하여 상기 암호화된 부분을 갖는 상기 URI를 상기 클라이언트로 송신하는 단계를 포함하는
    서비스 제공 방법.
  13. 제 12 항에 있어서,
    데이터 기억 장치에 상기 요청에 관련되는 트랜잭션 세부사항을 저장하는 단계를 더 포함하는
    서비스 제공 방법.
  14. 삭제
  15. 제 12 항에 있어서,
    상기 URI를 송신하는 상기 단계 전에, 상기 외부 리소스 공급자에 상기 사전 결정된 데이터 및 상기 사전 결정된 구조를 개별적으로 송신하는 단계를 더 포함하는
    서비스 제공 방법.
  16. 제 12 항에 있어서,
    지불을 받도록 상기 외부 리소스 공급자에게 리소스 요청에 관련되는 트랜잭션 세부사항을 송신하는 단계를 더 포함하는
    서비스 제공 방법.
  17. 청구항 17은(는) 설정등록료 납부시 포기되었습니다.
    제 12 항에 있어서,
    상기 하나 이상의 트랜잭션 요구조건은 상기 클라이언트로부터의 지불을 포함하는
    서비스 제공 방법.
  18. 청구항 18은(는) 설정등록료 납부시 포기되었습니다.
    제 12 항에 있어서,
    상기 하나 이상의 트랜잭션 요구조건은 상기 클라이언트가 하나 이상의 액세스 요구조건을 만족시키는지를 판단하는 단계를 포함하는
    서비스 제공 방법.
  19. 제 12 항에 있어서,
    상기 하나 이상의 트랜잭션 요구조건이 만족되었는지를 판단하는 단계는 상기 요청에 포함되는 액세스 제어 세부사항을 데이터 기억 장치에 저장되는 액세스 제어 데이터와 비교하는 단계를 포함하는
    서비스 제공 방법.
  20. 삭제
  21. 삭제
KR1020050091050A 2004-11-18 2005-09-29 액세스 제공 방법, 서비스 제공 방법 및 이를 실행하는프로그램을 갖는 컴퓨터 판독 가능한 기록 매체 KR100745438B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/991,580 2004-11-18
US10/991,580 US20060106802A1 (en) 2004-11-18 2004-11-18 Stateless methods for resource hiding and access control support based on URI encryption

Publications (2)

Publication Number Publication Date
KR20060055314A KR20060055314A (ko) 2006-05-23
KR100745438B1 true KR100745438B1 (ko) 2007-08-02

Family

ID=36387653

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050091050A KR100745438B1 (ko) 2004-11-18 2005-09-29 액세스 제공 방법, 서비스 제공 방법 및 이를 실행하는프로그램을 갖는 컴퓨터 판독 가능한 기록 매체

Country Status (4)

Country Link
US (3) US20060106802A1 (ko)
KR (1) KR100745438B1 (ko)
CN (1) CN1777090A (ko)
TW (1) TW200641642A (ko)

Families Citing this family (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7343413B2 (en) 2000-03-21 2008-03-11 F5 Networks, Inc. Method and system for optimizing a network by independently scaling control segments and data flow
US9003295B2 (en) * 2003-03-17 2015-04-07 Leo Martin Baschy User interface driven access control system and method
US20060129522A1 (en) * 2004-12-09 2006-06-15 Itterbeck Heiko G Subscription service for access to distributed cell-oriented data systems
US9176934B2 (en) 2005-05-06 2015-11-03 Leo Baschy User interface for nonuniform access control system and methods
US9129088B1 (en) 2005-06-04 2015-09-08 Leo Martin Baschy User interface driven access control system and methods for multiple users as one audience
US9202068B2 (en) 2006-03-29 2015-12-01 Leo M. Baschy User interface for variable access control system
US8370261B2 (en) * 2007-01-10 2013-02-05 Amnon Nissim System and a method for access management and billing
WO2008108564A1 (en) * 2007-03-02 2008-09-12 Lg Electronics Inc. Method and system for transferring resource
US7984512B2 (en) 2007-06-14 2011-07-19 Microsoft Corporation Integrating security by obscurity with access control lists
US20090089401A1 (en) * 2007-10-01 2009-04-02 Microsoft Corporation Server-controlled distribution of media content
US8037540B2 (en) * 2008-01-17 2011-10-11 Disney Enterprises, Inc. Method and system for protecting a virtual community visitor from unauthorized social interaction
US20090210493A1 (en) * 2008-02-15 2009-08-20 Microsoft Corporation Communicating and Displaying Hyperlinks in a Computing Community
WO2009118023A1 (en) * 2008-03-25 2009-10-01 Nokia Siemens Networks Oy Dynamic discovery of quality of service nodes
US8302204B2 (en) * 2008-07-30 2012-10-30 Sap Ag Secure distributed item-level discovery service using secret sharing
EP2377288B1 (en) * 2008-08-22 2015-10-14 QUALCOMM Incorporated Method and apparatus for transmitting and receiving secure and non-secure data
US20100054242A1 (en) * 2008-08-28 2010-03-04 Nokia Corporation Method, apparatus and computer program to generate a unique node identifier
US8200958B2 (en) * 2008-10-03 2012-06-12 Limelight Networks, Inc. Content delivery network encryption
US20110307490A1 (en) * 2010-06-15 2011-12-15 Usm China/Hong Kong Limited Context Level Protocols And Interfaces
CN102045323B (zh) * 2009-10-09 2014-02-26 华为终端有限公司 统一资源标识符索引的信息的处理方法及装置
US10721269B1 (en) 2009-11-06 2020-07-21 F5 Networks, Inc. Methods and system for returning requests with javascript for clients before passing a request to a server
EP2339483A3 (en) * 2009-11-24 2011-09-07 Sony Corporation A method for providing/accessing data on the Internet and a respective client, server, and system
US20110131408A1 (en) * 2009-12-01 2011-06-02 International Business Machines Corporation Document link security
US10015286B1 (en) 2010-06-23 2018-07-03 F5 Networks, Inc. System and method for proxying HTTP single sign on across network domains
US8560843B1 (en) * 2010-09-24 2013-10-15 Symantec Corporation Encrypted universal resource identifier (URI) based messaging
US20120163598A1 (en) * 2010-12-22 2012-06-28 Sap Ag Session secure web content delivery
US10135831B2 (en) 2011-01-28 2018-11-20 F5 Networks, Inc. System and method for combining an access control system with a traffic management system
US8892459B2 (en) * 2011-07-25 2014-11-18 BrandVerity Inc. Affiliate investigation system and method
KR101086451B1 (ko) * 2011-08-30 2011-11-25 한국전자통신연구원 클라이언트 화면 변조 방어 장치 및 방법
US10230566B1 (en) 2012-02-17 2019-03-12 F5 Networks, Inc. Methods for dynamically constructing a service principal name and devices thereof
US10097616B2 (en) 2012-04-27 2018-10-09 F5 Networks, Inc. Methods for optimizing service of content requests and devices thereof
CN103684812B (zh) * 2012-08-31 2017-07-07 国际商业机器公司 用于管理远程设备的方法和装置
US9894040B2 (en) 2012-09-11 2018-02-13 Microsoft Technology Licensing, Llc Trust services for securing data in the cloud
US8959351B2 (en) 2012-09-13 2015-02-17 Microsoft Corporation Securely filtering trust services records
US20140115327A1 (en) * 2012-10-22 2014-04-24 Microsoft Corporation Trust services data encryption for multiple parties
US10187317B1 (en) 2013-11-15 2019-01-22 F5 Networks, Inc. Methods for traffic rate control and devices thereof
US10325282B2 (en) * 2013-11-27 2019-06-18 At&T Intellectual Property I, L.P. Dynamic machine-readable codes
US20150172368A1 (en) * 2013-12-13 2015-06-18 Tyfone, Inc. Url mapping to non-hyperlinked code
GB2526818B (en) * 2014-06-03 2021-01-13 Arm Ip Ltd Methods of accessing and providing access to a remote resource from a data processing device
US10015143B1 (en) 2014-06-05 2018-07-03 F5 Networks, Inc. Methods for securing one or more license entitlement grants and devices thereof
US10454970B2 (en) * 2014-06-30 2019-10-22 Vescel, Llc Authorization of access to a data resource in addition to specific actions to be performed on the data resource based on an authorized context enforced by a use policy
US11838851B1 (en) 2014-07-15 2023-12-05 F5, Inc. Methods for managing L7 traffic classification and devices thereof
US10057217B2 (en) * 2014-07-15 2018-08-21 Sap Se System and method to secure sensitive content in a URI
US10122630B1 (en) 2014-08-15 2018-11-06 F5 Networks, Inc. Methods for network traffic presteering and devices thereof
US9756058B1 (en) * 2014-09-29 2017-09-05 Amazon Technologies, Inc. Detecting network attacks based on network requests
US10182013B1 (en) 2014-12-01 2019-01-15 F5 Networks, Inc. Methods for managing progressive image delivery and devices thereof
US11895138B1 (en) 2015-02-02 2024-02-06 F5, Inc. Methods for improving web scanner accuracy and devices thereof
US10834065B1 (en) 2015-03-31 2020-11-10 F5 Networks, Inc. Methods for SSL protected NTLM re-authentication and devices thereof
US11350254B1 (en) 2015-05-05 2022-05-31 F5, Inc. Methods for enforcing compliance policies and devices thereof
US10505818B1 (en) 2015-05-05 2019-12-10 F5 Networks. Inc. Methods for analyzing and load balancing based on server health and devices thereof
US10122718B2 (en) 2015-08-21 2018-11-06 Arm Ip Limited Data access and ownership management
US9654492B2 (en) 2015-09-15 2017-05-16 Mimecast North America, Inc. Malware detection system based on stored data
US10536449B2 (en) 2015-09-15 2020-01-14 Mimecast Services Ltd. User login credential warning system
US9467435B1 (en) * 2015-09-15 2016-10-11 Mimecast North America, Inc. Electronic message threat protection system for authorized users
US10728239B2 (en) 2015-09-15 2020-07-28 Mimecast Services Ltd. Mediated access to resources
US11595417B2 (en) 2015-09-15 2023-02-28 Mimecast Services Ltd. Systems and methods for mediating access to resources
US11757946B1 (en) 2015-12-22 2023-09-12 F5, Inc. Methods for analyzing network traffic and enforcing network policies and devices thereof
US10404698B1 (en) 2016-01-15 2019-09-03 F5 Networks, Inc. Methods for adaptive organization of web application access points in webtops and devices thereof
US11178150B1 (en) 2016-01-20 2021-11-16 F5 Networks, Inc. Methods for enforcing access control list based on managed application and devices thereof
CN105516208B (zh) * 2016-01-28 2018-09-28 邱铭钗 一种有效防止网络攻击的web网站链接动态隐藏方法
US10701040B2 (en) * 2016-05-23 2020-06-30 Amazon Technologies, Inc. Protecting content-stream portions from modification or removal
US10791088B1 (en) 2016-06-17 2020-09-29 F5 Networks, Inc. Methods for disaggregating subscribers via DHCP address translation and devices thereof
US10505792B1 (en) 2016-11-02 2019-12-10 F5 Networks, Inc. Methods for facilitating network traffic analytics and devices thereof
US10812266B1 (en) 2017-03-17 2020-10-20 F5 Networks, Inc. Methods for managing security tokens based on security violations and devices thereof
US10972453B1 (en) 2017-05-03 2021-04-06 F5 Networks, Inc. Methods for token refreshment based on single sign-on (SSO) for federated identity environments and devices thereof
US11343237B1 (en) 2017-05-12 2022-05-24 F5, Inc. Methods for managing a federated identity environment using security and access control data and devices thereof
US11122042B1 (en) 2017-05-12 2021-09-14 F5 Networks, Inc. Methods for dynamically managing user access control and devices thereof
US11122083B1 (en) 2017-09-08 2021-09-14 F5 Networks, Inc. Methods for managing network connections based on DNS data and network policies and devices thereof
US10275235B2 (en) * 2017-09-18 2019-04-30 International Business Machines Corporation Adaptable management of web application state in a micro-service architecture
CN107911335B (zh) * 2017-09-26 2021-02-09 五八有限公司 校验统一资源标识符uri的方法、装置和系统
WO2019158681A1 (en) * 2018-02-16 2019-08-22 Telefonaktiebolaget Lm Ericsson (Publ) Protecting a message transmitted between core network domains
EP3791537A4 (en) * 2018-05-09 2022-01-19 Nokia Technologies Oy SECURITY MANAGEMENT FOR EDGE PROXIES AT AN INTERNETWORK INTERFACE IN A COMMUNICATION SYSTEM
US11792163B2 (en) * 2018-05-12 2023-10-17 Nokia Technologies Oy Security management for network function messaging in a communication system
CN113055343B (zh) * 2019-12-27 2023-04-28 贵州白山云科技股份有限公司 Uri构造方法、装置、介质及设备
CN111611075B (zh) * 2020-05-19 2024-03-05 北京达佳互联信息技术有限公司 虚拟资源请求处理方法、装置、电子设备及存储介质
KR102353211B1 (ko) * 2021-04-14 2022-01-20 쿠팡 주식회사 페이지 제공을 위한 정보를 처리하는 전자 장치 및 그 방법
WO2024068611A1 (en) * 2022-09-30 2024-04-04 Telefonaktiebolaget Lm Ericsson (Publ) Security for ai/ml model storage and sharing

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030029244A (ko) * 2001-10-05 2003-04-14 주식회사 케이티 시디엔 서비스 망에서의 컨텐츠 전송 방법 및 시스템
KR20040033219A (ko) * 2002-10-11 2004-04-21 삼성에스디에스 주식회사 Uri 개념을 이용한 역지불 시스템 및 방법

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7143141B1 (en) * 2000-01-25 2006-11-28 Hewlett-Packard Development Company, L.P. System for providing internet-related services in response to a handheld device that is not required to be internet-enabled
AUPR129300A0 (en) * 2000-11-07 2000-11-30 Devsecure Pty Ltd Encoding of universal resource locators in a security gateway to enable manipulation by active content
US7127609B2 (en) * 2001-01-12 2006-10-24 Siemens Medical Solutions Health Services Corporation System and user interface for adaptively processing and communicating URL data between applications
US20020178213A1 (en) * 2001-04-11 2002-11-28 Parry John Chad Remote URL munging
US7308710B2 (en) * 2001-09-28 2007-12-11 Jp Morgan Chase Bank Secured FTP architecture
US20030105807A1 (en) * 2001-11-30 2003-06-05 Aerocast.Com, Inc. URL munging
US20030217163A1 (en) * 2002-05-17 2003-11-20 Lambertus Lagerweij Method and system for assessing a right of access to content for a user device
US7310813B2 (en) * 2002-09-30 2007-12-18 Authenex, Inc. System and method for strong access control to a network
US7383229B2 (en) * 2003-03-12 2008-06-03 Yahoo! Inc. Access control and metering system for streaming media
US8819419B2 (en) * 2003-04-03 2014-08-26 International Business Machines Corporation Method and system for dynamic encryption of a URL
WO2006014313A2 (en) * 2004-07-02 2006-02-09 America Online, Inc. Relevant multimedia advertising targeted based upon search query

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030029244A (ko) * 2001-10-05 2003-04-14 주식회사 케이티 시디엔 서비스 망에서의 컨텐츠 전송 방법 및 시스템
KR20040033219A (ko) * 2002-10-11 2004-04-21 삼성에스디에스 주식회사 Uri 개념을 이용한 역지불 시스템 및 방법

Also Published As

Publication number Publication date
CN1777090A (zh) 2006-05-24
US20060106802A1 (en) 2006-05-18
US20080313469A1 (en) 2008-12-18
TW200641642A (en) 2006-12-01
US20090313136A1 (en) 2009-12-17
KR20060055314A (ko) 2006-05-23

Similar Documents

Publication Publication Date Title
KR100745438B1 (ko) 액세스 제공 방법, 서비스 제공 방법 및 이를 실행하는프로그램을 갖는 컴퓨터 판독 가능한 기록 매체
US11132463B2 (en) Security systems and methods for encoding and decoding digital content
US20210383025A1 (en) Security Systems and Methods for Encoding and Decoding Content
JP7007985B2 (ja) 鍵を有するリソースロケーター
EP1379045B1 (en) Arrangement and method for protecting end user data
US8819109B1 (en) Data network communication using identifiers mappable to resource locators
EP1346548B1 (en) Secure session management and authentication for web sites
AU694367B2 (en) Internet server access control and monitoring systems
EP0844767B1 (en) User controlled browser
EP0940960A1 (en) Authentication between servers
JP2003502983A (ja) コンピュータネットワーク上における安全が保証された取引方法及びシステム
CA3103222C (en) Security systems and methods for encoding and decoding digital content
EP1513313A1 (en) A method of accessing a network service or resource, a network terminal and a personal user device therefore
JP7157258B2 (ja) 集約されたネットワーク測定における不正の防止
CN110266690A (zh) 涉及区块链的知识分享数据上链方法及其设备
CN110266700A (zh) 一种应用智能合约的点赞数据上链方法及其设备

Legal Events

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

Payment date: 20100428

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee