KR20160132085A - 키보드가 없는 디바이스를 위한 랜덤 캐릭터의 시각화 기법 - Google Patents

키보드가 없는 디바이스를 위한 랜덤 캐릭터의 시각화 기법 Download PDF

Info

Publication number
KR20160132085A
KR20160132085A KR1020167028175A KR20167028175A KR20160132085A KR 20160132085 A KR20160132085 A KR 20160132085A KR 1020167028175 A KR1020167028175 A KR 1020167028175A KR 20167028175 A KR20167028175 A KR 20167028175A KR 20160132085 A KR20160132085 A KR 20160132085A
Authority
KR
South Korea
Prior art keywords
characters
random
character
user information
standard
Prior art date
Application number
KR1020167028175A
Other languages
English (en)
Other versions
KR101831095B1 (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 KR20160132085A publication Critical patent/KR20160132085A/ko
Application granted granted Critical
Publication of KR101831095B1 publication Critical patent/KR101831095B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • 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/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/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
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/065Continuous authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/33Security of mobile devices; Security of mobile applications using wearable devices, e.g. using a smartwatch or smart-glasses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Abstract

다양한 예시적인 실시예에서, 음성 입력에 의해 개인 사용자 정보를 클라이언트 디바이스로 통신하는데 사용될 수 있는 랜덤 캐릭터의 세트를 시각화하기 위한 시스템 및 방법이 제공된다. 예시적인 실시예에서, 개인 사용자 정보를 통신하기 위한 요청은 클라이언트 디바이스로부터 수신된다. 요청에 응답하여, 랜덤 캐릭터의 세트가 생성되고, 랜덤 캐릭터의 세트로부터의 적어도 하나의 랜덤 캐릭터는 표준 캐릭터의 세트로부터의 캐릭터에 대응한다. 표준 캐릭터의 세트 및 랜덤 캐릭터의 세트를 갖는 이미지가 생성되어 클라이언트 디바이스 상에 디스플레이될 수 있다. 클라이언트 디바이스는 예시적인 실시예에서 웨어러블 디바이스일 수 있다.

Description

키보드가 없는 디바이스를 위한 랜덤 캐릭터의 시각화 기법{VISUALIZING RANDOM CHARACTERS FOR KEYBOARD-LESS DEVICES}
본 국제 출원은 2014년 3월 12일자로 출원된 미국 특허 출원 제14/207,369 호의 우선권 이익을 주장하고, 상기 특허 출원의 전체 내용은 본 명세서에 참조로서 포함된다.
본 개시의 실시예는 일반적으로 이미지 프로세싱에 관한 것이며, 더 상세하게는 개인 사용자 정보에 대한 음성 입력을 제공하기 위해 랜덤 캐릭터의 세트를 시각화하는 것에 관한 것이지만, 이에 제한되지 않는다.
많은 웨어러블 디바이스는 키보드가 없는 디바이스이다. 구글 안경TM(캘리포니아, 마운틴 뷰 소재의 구글 인크에 의해 개발됨)과 같은 웨어러블 디바이스는 키보드를 갖지 않고, 사용자 입력을 제공하기 위해 사용자가 마이크로폰으로 말한 자연 언어 및 터치패드 상의 제스처를 사용하는 것을 허용할 수 있다. 특정 환경 또는 상황에서, 사용자는 웨어러블 디바이스 상에서 실행되는 앱(app)에 액세스하기 위해 사용자 이름 및 패스워드를 포함하는 식별 정보를 제공하기를 원할 수 있다. 종종, 사용자는 이러한 정보를 개인적인 것으로 간주하고, 사용자의 음성 입력을 듣을 수 있을 만큼 사용자에게 충분히 가까울 수 있는 다른 사람들과 이러한 식별 정보를 공유하기를 원하지 않는다. 결과적으로, 사용자는 음성 입력을 웨어러블 디바이스에 제공하는 것을 주저할 수 있다.
첨부된 도면 중 다양한 도면은 단지 본 발명의 예시적인 실시예를 도시한 것으로 범위를 제한하는 것으로 고려되어서는 안된다.
도 1은 예시적인 실시예를 도시한 네트워크 시스템의 블록도이다.
도 2는 공개 시스템의 예시적인 실시예를 도시한 블록도이다.
도 3은 랜덤 캐릭터 시각화 엔진의 예시적인 실시예를 도시한 블록도이다.
도 4는 예시적인 실시예에 따른 랜덤 캐릭터들의 세트를 시각화하기 위한 흐름도이다.
도 5는 예시적인 실시예에 따른 개인 사용자 정보를 제공하기 위해 음성 입력을 사용하는 흐름도이다.
도 6a는 예시적인 실시예에 따른, 디스플레이된 표준 캐릭터를 디스플레이된 랜덤 캐릭터로 맵핑하고, 디스플레이된 랜덤 캐릭터를 구두의 랜덤 캐릭터로 맵핑하는 표이다.
도 6b는 예시적인 실시예에 따른, 표준 세트의 캐릭터 및 선택된 랜덤 캐릭터를 디스플레이하는 키보드의 이미지이다.
도 7은 본 발명의 주제와 관련된 컴퓨터 시스템의 예시적인 실시예이다.
이어지는 설명은 본 발명의 예시적인 실시예를 구현하는 시스템, 방법, 기술, 명령어 시퀀스 및 컴퓨팅 머신 프로그램 제품을 포함한다. 다음의 설명에서, 설명의 목적을 위해, 다수의 특정 세부사항은 본 발명 주제의 다양한 실시예의 이해를 제공하기 위해 설명된다. 그러나, 본 발명의 실시예가 이들 특정 세부사항 없이도 실시될 수 있다는 것이 당업자에게는 자명할 것이다. 일반적으로, 공지된 명령어 인스턴스, 프로토콜, 구조 및 기술은 상세히 설명되지 않았다.
본 명세서에서 사용되는 바와 같이, 용어 "또는"은 포괄적 또는 배타적 의미로 해석될 수 있다. 부가적으로, 아래에 논의된 다양한 예시적인 실시예가 시장 환경에 초점을 맞춰 있지만, 실시예들은 단지 개시의 명료성을 위해 주어진 것이다. 따라서, 다양한 시스템 아키텍처를 포함하는 임의의 유형의 전자 출판물, 전자 상거래, 소셜 네트워킹, 또는 전자 비지니스 시스템 및 방법은 여기서 설명되고 예시적인 실시예의 범위 내에 있는 것으로 고려될 수 있는 시스템 및 방법의 다양한 실시예를 사용할 수 있다. 각각의 다양한 예시적인 실시예가 이하에 상세히 설명된다.
본 명세서에 설명된 예시적인 실시예는, 개인 사용자 정보를 키보드가 없는 디바이스에 제공하기 위해, 랜덤 캐릭터의 세트를 시각화하고 음성 입력을 사용하기 위한 시스템 및 방법을 제공한다. 개인 사용자 정보는 금융 정보, 식별 정보 및 사용자가 은밀하게 유지하고자 하는 다른 정보를 포함할 수 있다. 예를 들면, 사용자의 음성 입력이 다른 사람들에게 들릴 수 있을지라도, 공개 위치에 위치한 사용자는 은밀한 방식으로 데이터를 키보드가 없는 디바이스에 입력하기 위해 음성 입력을 사용하고자 한다. 다시 말해서, 다른 사람들이 사용자가 말하고 있는 것을 들을 수 있을지라도, 사용자는 개인 사용자 정보의 내용이 다른 사람들에 의해 인지 불가한 자연 언어 음성 입력을 제공할 수 있다. 예를 들면, 사용자는 사용자에 대해 들을 수 있는 다른 사람들이 개인 사용자 정보의 내용을 이해할 수 없도록 랜덤하게 생성된 캐릭터를 말함으로써, 페이팔® 계좌와 같은 사용자의 온라인 뱅킹 계좌 또는 온라인 지불 계좌 중 하나에 로그인하기를 원할 수 있다.
예시적인 실시예에서, 사용자는 구글 안경 또는 스마트 워치와 같은 웨어러블 컴퓨팅 디바이스와 같이 사용자의 키보드가 없는 디바이스 상에 디스플레이된 랜덤 캐릭터를 말함으로써 개인 사용자 정보를 통신하도록 요청할 수 있다. 일부 실시예에서, 랜덤 캐릭터의 세트가 생성되고, 여기서 적어도 하나의 랜덤 캐릭터는 표준 캐릭터의 세트로부터의 표준 캐릭터에 대응한다. 예시적인 실시예에서, 표준 캐릭터의 세트는 문자, 수사 또는 숫자, 부호, 심볼, 컬러, 특수 캐릭터 및/또는 이미지를 포함하여, 컴퓨터 키보드 상의 캐릭터를 나타낸다. 랜덤하게 생성된 캐릭터 및 그들의 대응하는 표준 캐릭터는 사용자의 키보드가 없는 디바이스 상에서 사용자에게 제공된다.
일 실시예에서, 표준 캐릭터의 세트를 갖는 키보드의 이미지는 랜덤 캐릭터로 증강되고, 구글 안경과 같은 웨어러블 컴퓨팅 디바이스 상에서 사용자에게 디스플레이될 수 있다. 대안적인 실시예에서, 표준 캐릭터로 맵핑된 랜덤 캐릭터의 이미지는 증강 현실 이미지를 나타내지 않을 수 있다. 추가의 실시예에서, 사용자는 사용자의 웨어러블 컴퓨팅 디바이스 상에서 액세스 가능한 애플리케이션(또한 "앱"으로 지칭됨)에 로그인하거나, 사용자의 웨어러블 컴퓨팅 디바이스 상에서 액세스 가능한 앱에 다른 개인 또는 민감한 정보를 입력하기 위해 랜덤 캐릭터를 말함으로써 자연 언어 음성 입력을 사용할 수 있다. 다른 실시예에서, 사용자는 다양한 기능, 커맨드 또는 동작을 수행하도록 사용자의 웨어러블 컴퓨팅 디바이스를 통해 내비게이팅하기 위해 자연 언어 음성 입력을 사용할 수 있다. 랜덤 캐릭터 음성 입력에 대응하는 표준 캐릭터는 시스템에 의해 인식되고, 사용자를 관련 앱에 로그인하거나, 사용자의 웨어러블 컴퓨팅 디바이스 상에서 관련 앱에 관련된 다른 서비스 또는 기능을 수행하거나 사용자의 웨어러블 컴퓨팅 디바이스를 통해 내비게이팅하는데 사용된다. 실제 내용 캐릭터(표준 캐릭터에 의해 표현됨) 대신에, 랜덤하게 생성된 캐릭터를 말함으로써, 사용자는 사용자가 사용자의 웨어러블 컴퓨팅 디바이스에 말하는 것을 듣는 다른 사람에 의해 사용자의 개인 정보(가령, 계좌 정보, 사용자 이름, 패스워드, 민감한 정보 등)가 인식되는 것을 방지한다. 이로써, 자연 언어 음성 입력을 사용하는 웨어러블 컴퓨팅 디바이스의 사용자는, 랜덤하게 생성된 캐릭터가 사용될 때, 사용자의 개인 정보를 비밀로 유지할 수 있다. 대안적인 실시예에서, 음성 입력은 단독으로 또는 제스처(예를 들면, 터치패드 상의 스위핑 모션(swiping motion))와 같은 다른 형태의 데이터 입력과 관련하여 사용될 수 있다.
도 1을 참조하면, 키보드가 없는 디바이스 상의 랜덤하게 생성된 캐릭터의 시각화를 가능하게 하고 음성 입력을 통해 랜덤 캐릭터를 사용하여 개인 사용자 정보를 통신하기 위한 고레벨 클라이언트-서버-기반 네트워크 아키텍처(100)의 예시적인 실시예가 도시되어 있다. 예에서, 네트워크 시스템(102)은 네트워크-서버-측 기능을 제공하고, 통신 네트워크(예를 들면, 인터넷, 무선 네트워크, 셀룰러 네트워크, 또는 WAN(Wide Area Network))를 통해 하나 이상의 클라이언트 디바이스(110 및 112)에 연결된다. 도 1은, 예를 들면, (예를 들면, 미국 워싱턴주 레드몬드 소재의 Microsoft® Corporation에 의해 개발된 INTERNET EXPLORER® 브라우저와 같은) 브라우저를 통해 동작하는 웹 클라이언트(106), 및 각각의 클라이언트 디바이스(110 및 112) 상에서 실행되는 프로그래밍적 클라이언트(108)를 도시한다.
클라이언트 디바이스(110 및 112)는 모바일 폰, 웨어러블 컴퓨팅 디바이스, 데스크톱 컴퓨터, 랩톱, 또는 사용자(105)와 같은 사용자가 네트워크 시스템(102)에 액세스하는데 사용될 수 있는 임의의 다른 디바이스를 포함할 수 있다. 몇몇 실시예에서, 클라이언트 디바이스(110 및 112)는 키보드가 없는 디바이스 또는 다른 형태의 유사한 디바이스인 웨어러블 컴퓨팅 디바이스(예를 들면, 구글 안경 또는 스마트 워치)일 수 있다. 본 명세서에서 사용된 바와 같이, 키보드가 없는 디바이스는, 사용자가 캐릭터를 선택하기 위해 키를 누르거나 대화형 스크린의 관련 부분을 터치하게 함으로써 데이터를 입력하는데 사용되는 대화형 표면 또는 물리적 키를 갖는 키보드(물리적 또는 가상 중 어느 하나)가 없는 디바이스를 지칭한다. 클라이언트 디바이스(110 및 112)가 스크린 상에 키보드의 이미지를 디스플레이할 수 있고, 키보드 이미지 상의 캐릭터를 선택하기 위해 음성 입력을 수신할 수 있다는 것이 주목되어야 한다. 그러한 디바이스는 기재된 실시예의 범위 내에서 키보드가 없는 것으로 간주될 수 있다. 일부 실시예에서, 클라이언트 디바이스(110)는 카메라 또는 캠코더(미도시)와 같은 이미지 캡처 디바이스를 포함하거나 이에 접속 가능할 수 있다. 추가의 실시예에서, 클라이언트 디바이스(110 및 112)는 터치패드, 터치 스크린, 가속도계, 마이크로폰, 및 GPS 디바이스 중 하나 이상을 포함할 수 있다. 다양한 애플리케이션 또는 앱이 클라이언트 디바이스(110 및 112) 상에서 실행될 수 있다. 예를 들면, 공개 시스템(120) 및 지불 시스템(122)으로부터의 하나 이상의 애플리케이션들은 대응하는 앱이 클라이언트 디바이스(110 및 112) 상에서 실행되게 함으로써 사용자에게 액세스 가능할 수 있다. 대안적으로, 사용자(105)는 웹 브라우저를 통해 클라이언트 디바이스(110 및 112)로부터 그러한 애플리케이션을 액세스할 수 있다. 사용자(105)는, 자신의 식별 정보를 은밀하게 유지하면서, 클라이언트 디바이스(110 및 112)를 사용하여 그러한 애플리케이션 및 앱에 로그인하기를 원할 수 있다. 예시적인 실시예에서, 클라이언트 디바이스(110 및 112)는, 랜덤하게 생성된 캐릭터를 말함으로써(이것은 사용자(105)가 말하는 것을 들을 수 있는 다른 사람으로부터 음성 입력의 내용을 은닉함) 자연 언어 음성 입력을 사용하여 개인 정보를 통신하는데 관심을 갖는 사용자(105)와 같은 개별적인 사용자의 디바이스일 수 있다.
예시적인 실시예에서, 클라이언트 디바이스(110 및 112)는 구글 안경 또는 스마트 워치와 같은 임의의 형태의 키보드가 없는 디바이스일 수 있다. 예를 들면, 구글 안경은 사용자 입력을 수신하기 위한 터치패드 및 마이크로폰을 포함한다. 음성 커맨드 및 자연 언어와 같은 음성 입력은 마이크로폰에 의해 수신될 수 있다. 음성 인식 소프트웨어 및/또는 텍스트 인식 소프트웨어는 다양한 실시예에 따라 클라이언트 디바이스(110 및 112)에 의해 수신된 음성 입력(가청의 랜덤 캐릭터를 나타냄)을 텍스트 캐릭터로 프로세싱하는데 사용될 수 있다. 터치패드는 사용자(105)가 스크린 상에 디스플레이된 타임-라인형 인터페이스를 통해 내비게이팅하도록 스위칭 모션(포워드 및 백워드)을 사용하여 구글 안경을 제어하도록 허용한다.
구글 안경은 또한 핸즈-프리 포맷(hands-free format)으로 정보를 디스플레이하는 OHMD(optical head-mounted display)를 포함할 수 있다. OHMD는 투명 스크린을 사용자(105)에 제공할 수 있고, 여기서 개인 사용자 정보를 통신하는데 사용되는 랜덤하게 생성된 캐릭터를 포함하여 모든 정보가 디스플레이된다. 구글 안경에 대해 지메일(Gmail), 구글 맵, 구글 검색, 메시징, 소셜 네트워크(가령, 페이스북® 및 트위터®)에 대한 공유, 온라인 지불 등과 같은 많은 앱이 이용 가능하다. 그러한 앱은 음성 입력을 사용하여 사용자 이름 및 패스워드로 앱에 로그인하도록 사용자(105)에게 명시할 수 있다. 구글 안경은 다른 디바이스와 데이터 접속을 공유하기 위해 Wi-Fi를 통해 또는 블루투스를 통해 통신할 수 있다. 구글 안경은 안드로이드® 디바이스와의 블루투스 접속을 통해 다양한 서비스(GPS 또는 SMS 메시징)를 액세스할 수 있다. 카메라 디바이스가 안경에 부착되고, 사진을 촬영하고 비디오를 기록하는 능력을 갖는다. 카메라를 구글 안경에 부착하고, 스크린이 사용자의 시야 바로 위에 놓게 하여, 사용자(105)에게 증강 현실 이미지가 제공될 수 있다. 증강 현실 이미지는 스크린 상에 디스플레이되고 대응하는 키보드 캐릭터를 덮어씌우는 랜덤 캐릭터로 증강된 사용자의 모바일 디바이스 키보드의 이미지일 수 있다.
API(Application Program Interface) 서버(114) 및 웹 서버(116)는 하나 이상의 애플리케이션 서버(118)에 접속되고 그에게 각각 프로그래밍적 및 웹 인터페이스를 제공한다. 애플리케이션 서버(118)는, 각각 하나 이상의 모듈, 애플리케이션 또는 엔진을 포함할 수 있고, 각각 하드웨어, 소프트웨어, 펌웨어 또는 그들의 임의의 조합으로서 구현될 수 있는 공개 시스템(120) 및 지불 시스템(122)을 호스팅하는 서버 머신(미도시) 상에 상주할 수 있다. 애플리케이션 서버(118)는, 결국, 하나 이상의 정보 저장소(repository) 또는 데이터베이스(126)로의 액세스를 가능하게 하는 하나 이상의 데이터베이스 서버(124)에 연결된다. 데이터베이스(126)는 또한 예시적인 실시예에 따라 네트워크 시스템(102)의 사용자 계정 정보를 저장할 수 있다.
데이터베이스(126)는 클라이언트-서버-기반 네트워크 아키텍처(100) 및 이의 사용자와 연관되는 다양한 기능 및 양태와 관련되는 데이터를 저장할 수 있다. 예를 들어, 네트워크 시스템(102)의 사용자에 대한 사용자 계정이 데이터베이스(126)에 저장 및 유지될 수 있다. 각각의 사용자 계정은 사용자(105)와 같은 특정 사용자의 양태를 기술하는 사용자 데이터를 포함할 수 있다. 사용자 데이터는 인구통계적 데이터, 사용자 선호도 및 금융 정보를 포함할 수 있다. 인구통계적 데이터는, 예를 들면, 사용자(105)의 하나 이상의 특성을 기술하는 정보를 포함할 수 있다. 인구통계적 데이터는 예를 들어 성별, 연령, 위치 정보, 취업 이력, 교육 이력, 연락처 정보, 가족 관계 또는 사용자 관심사항을 포함할 수 있다. 금융 정보는 예를 들어, 계좌 번호, 크리덴셜, 패스워드, 디바이스 식별자, 사용자 이름, 전화 번호, 신용 카드 정보, 은행 정보, 거래 이력 또는 사용자(105)에 의한 온라인 거래를 용이하게 하는 데 사용될 수 있는 다른 금융 정보와 같은 사용자(105)의 개인 금융 정보를 포함할 수 있다. 일부 실시예에 따라, 거래 이력은 네트워크 시스템(102)에 의해 제공되는 마켓플레이스 서비스를 사용하여 상인에 의한 판매용으로 제공될 수 있는 상품 또는 서비스(총칭하여 "아이템" 또는 "제품"으로 칭해짐)에 대한 거래에 관련되는 정보를 포함할 수 있다. 거래 이력 정보는 예를 들어, 사용자(105)에 의해 구매되는 제품의 설명서, 제품의 식별자, 제품이 속하는 카테고리, 구매 가격, 수량, 또는 입찰의 수를 포함할 수 있다. 데이터베이스(126)는 또한 사용자(105)에게 제공되는 랜덤 캐릭터의 세트 및 표준 캐릭터의 세트를 디스플레이하기 위한 이미지 데이터를 저장할 수 있다.
예시적인 실시예에서, 공개 시스템(120)은 네트워크(예를 들면, 인터넷) 상에 콘텐츠를 공개한다. 이로써, 공개 시스템(120)은 네트워크 시스템(102)을 액세스하는 사용자에게 다수의 공개 기능 및 서비스를 제공한다. 공개 시스템(120)은 도 2와 연결하여 더 상세히 논의된다. 예시적인 실시예에서, 공개 시스템(120)은 마켓플레이스 환경에 관해서 논의된다. 그러나, 공개 시스템(120)이 정보 또는 소셜 네트워킹 환경과 같은 비-마켓플레이스 환경과 연관될 수 있다는 것이 유의된다. 다양한 실시예에서, 공개 시스템(120)은 랜덤 캐릭터의 세트의 시각화를 제공하고 개인 사용자 정보를 키보드가 없는 디바이스에 제공하기 위해 음성 입력을 사용하기 위한 랜덤 캐릭터 시각화 엔진(218)을 포함할 수 있다. 대안적인 실시예에서, 랜덤 캐릭터 시각화 엔진(218)(도 2 참조)은 제 3 자 서버(130) 및/또는 애플리케이션 서버(118)를 사용하여 구현될 수 있다.
지불 시스템(122)은 사용자에게 다수의 지불 서비스 및 기능을 제공한다. 지불 시스템(122)은 사용자가 자신의 계정에 (예를 들면, 미국 달러와 같은 상업용 통화, 또는 "포인트"와 같은 전매 통화로) 가치를 축적한 다음, 나중에 그 축적된 가치를 공개 시스템(120)을 통해 또는 그 밖에 네트워크(104) 상에서 이용가능하게 되는 제품(예를 들면, 상품 또는 서비스)으로 교환할 수 있게 한다. 지불 시스템(122)은 또한 임의의 유형 및 형태의 네트워크-기반 마켓플레이스를 통한 아이템의 구매에 대해 지불 메커니즘(예를 들면, 은행 계좌, PayPal™, 또는 신용 카드)으로부터의 지불을 가능하게 한다.
공개 시스템(120) 및 지불 시스템(122)이 모두 네트워크 시스템(102)의 일부를 형성하는 것으로 도 1에 도시되어 있지만, 대안적인 실시예에서, 지불 시스템(122)은 네트워크 시스템(102)이 분리되어 개별적인 지불 서비스의 일부를 형성할 수 있다는 것이 이해될 것이다. 부가적으로, 도 1의 예시적인 네트워크 아키텍처(100)가 클라이언트-서버 아키텍처를 채용하고 있지만, 당업자는 본 개시가 그러한 아키텍처에 제한되는 것이 아니라는 것을 인식할 것이다. 예시적인 네트워크 아키텍처(100)는 애플리케이션을, 예를 들면, 분산된 또는 피어-투-피어(peer-to-peer) 아키텍처 시스템, n-티어(tier) 아키텍처 또는 가상화된 클라우드 컴퓨팅 아키텍처에서 동일하게 잘 찾을 수 있다. 공개 시스템(120) 및 지불 시스템(122)은 또한, 네트워킹 능력을 가질 필요가 없는 개별 하드웨어 플랫폼 하에서 동작하는 독립형 시스템 또는 독립형 소프트웨어 프로그램으로서 구현될 수 있다.
부가적으로, 제 3 자 서버(들)(130) 상에서 실행되는 제 3 자 애플리케이션(들)(128)은 API 서버(114)에 의해 제공된 프로그래밍적 인터페이스를 통해 네트워크 시스템(102)에 대한 프로그래밍적 액세스를 갖는 것으로 도시된다. 예를 들면, 제 3 자 애플리케이션(128)은, 네트워크 시스템(102)으로부터 조회된 정보를 사용하여, 제 3 자에 의해 호스팅되는 웹사이트 상에서 하나 이상의 특징 또는 기능을 지원할 수 있다. 제 3 자 웹사이트는, 예를 들면, 네트워크 시스템(102)의 관련 애플리케이션에 의해 지원되는 하나 이상의 프로모션, 마켓플레이스 또는 지불 기능을 제공할 수 있다.
이제, 도 2를 참조하면, 일 실시예에서, 네트워크 시스템(102)의 공개 시스템(120) 내에 제공되는 다수의 컴포넌트를 도시하는 예시적인 블록도가 도시되어 있다. 일 실시예에서, 공개 시스템(120)은 아이템(예를 들면, 상품 또는 서비스)이 판매를 위해 제공될 수 있는 마켓플레이스 시스템이다. 대안적인 실시예에서, 공개 시스템(120)은 소셜 네트워킹 시스템 또는 정보 시스템이다. 공개 시스템(120)은 서버 머신들 간에 통신을 가능하게 하도록 접속된 전용 또는 공유 서버 머신들(미도시) 상에서 호스팅될 수 있다. 다수의 컴포넌트들 자체는 (예를 들면, 적절한 인터페이스를 통해) 통신 가능하게 서로 그리고 다양한 데이터 소스에 직접 또는 간접적으로 연결되어 정보가 컴포넌트들 간에 전달되도록 하거나 컴포넌트들이 공통 데이터를 공유하고 액세스하도록 허용한다. 더욱이, 컴포넌트는 하나 이상의 데이터베이스 서버(124)를 통해 하나 이상의 데이터베이스(126)를 액세스할 수 있다.
일 실시예에서, 공개 시스템(120)은 다수의 공개, 리스팅(listing), 및 가격-설정 메커니즘을 제공하고, 이로써 판매자는 판매를 위한 상품 또는 서비스를 리스팅(또는 그에 관한 정보를 공개)할 수 있고, 구매자는 그러한 상품 또는 서비스에 관심이 있다는 것을 표현할 수 있거나 그에 대한 구매를 희망한다는 것을 나타낼 수 있으며, 가격은 상품 또는 서비스에 관련된 거래를 위해 설정될 수 있다. 이를 위해, 공개 시스템(120)은 적어도 하나의 공개 엔진(202) 및 하나 이상의 쇼핑 엔진(204)을 포함할 수 있다. 일 실시예에서, 쇼핑 엔진(204)은 경매-포맷 리스팅 및 가격 설정 메커니즘(예를 들면, 영어, 네덜란드어, 중국어, 더블(Double), 역경매 등)을 지원할 수 있다.
가격 결정 엔진(206)은 다양한 가격 리스팅 포맷을 지원한다. 그러한 하나의 포맷은 가격-고정 리스팅 포맷(예를 들면, 전통적으로 분류된 광고-유형 리스팅 또는 카탈로그 리스팅)이다. 또 다른 포맷은 바이아웃-유형(buyout-type) 리스팅을 포함한다. 바이아웃-유형 리스팅(예를 들면, 미국 캘리포니아주 산호세 소재의 eBay Inc에 의해 개발된 BIN(Buy-It-Now) 기술)이 경매-포맷 리스팅과 결합하여 제공될 수 있고, 구매자가 상품 또는 서비스를 구매하게 할 수 있으며, 이 상품 또는 서비스는 또한 판매를 위해 경매를 통해, 아이템의 경매 시작가보다 전형적으로 더 높은 고정 가격으로 제공될 수 있다.
상점 엔진(208)은 판매자가, 유명상표이고 판매자에 의해 그리고 그를 위해 개인화될 수 있는 "가상" 상점 내에 리스팅을 그룹화하게 할 수 있다. 그러한 가상 상점은 또한 판촉, 인센티브, 및 판매자에게 특정되고 개인화된 특징들을 제공할 수 있다. 일 실시예에서, 판매자는 복수의 아이템을 가상 상점 내 바로 구매하기(Buy-It-Now) 아이템으로서 제공할 수 있거나, 복수의 아이템을 경매용으로 제공할 수 있거나, 또는 양자의 조합을 제공할 수 있다.
공개 시스템(120)의 내비게이션은 내비게이션 엔진(210)에 의해 가능하게 될 수 있다. 예를 들면, 내비게이션 엔진(210)의 검색 모듈(도시 생략)은, 예를 들면, 공개 시스템(120)을 통해 공개된 리스팅 또는 다른 정보의 키워드 검색을 가능하게 할 수 있다. 추가의 예에서, 내비게이션 엔진(210)의 브라우즈 모듈(미도시)은 사용자가 공개 시스템(120) 내에 어떤 리스팅 또는 다른 정보가 분류될 수 있는지에 따라 다양한 카테고리, 카탈로그, 또는 데이터 구조를 브라우징하게 할 수 있다. 검색 및 브라우징 애플리케이션을 보충하기 위해 내비게이션 엔진(210) 내에 다양한 다른 내비게이션 애플리케이션이 제공될 수 있다. 일 실시예에서, 내비게이션 엔진(210)은 사용자가 공개 시스템(120)에서 아이템(예를 들면, 가상 상점, 고정 가격 또는 경매 환경의 리스팅, 소셜 네트워크 또는 정보 시스템의 리스팅)을 검색하거나 브라우징하게 할 수 있다. 대안적인 실시예에서, 내비게이션 엔진(210)은 전체적인 네트워크(예를 들면, 네트워크(104))를 내비게이팅할 수 있다(예를 들면, 네트워크 상에서의 검색을 실행할 수 있다).
가능한 한 매력적이고 가시적으로 알려주기 위해 네트워크 시스템(102)을 통해 이용 가능한 정보를 리스팅하거나 포스팅하기 위해, 공개 시스템(120)은 사용자가 리스팅 내에 포함하기 위한 이미지를 업로드하고 보여지는 리스팅 내에 이미지를 통합하는 것을 가능하게 하는 이미징 엔진(212)을 포함할 수 있다. 이미징 엔진(212)은 랜덤 캐릭터 시각화 엔진(218)과 결합하여 동작함으로써, 이하에 더 상세히 논의될 바와 같이, 증강 현실 이미지 또는 다른 이미지를 생성한다.
리스팅 엔진(214)은 공개 시스템(120) 상에서 리스팅을 관리한다. 예시적인 실시예에서, 리스팅 엔진(214)은 사용자가 아이템의 리스팅을 작성(author)하도록 허용한다. 리스팅은 아이템의 설명과 함께 아이템의 이미지를 포함할 수 있다. 일 실시예에서, 리스팅은 사용자(예를 들면, 판매자)가 공개 시스템(120)을 통해 거래하고자 원하는 상품 또는 서비스와 관련이 있다. 이로써, 리스팅은 판매를 위한 상품의 이미지 및, 예를 들면, 치수, 컬러, 및 식별자(예를 들면, UPC 코드, ISBN 코드)와 같은 아이템의 설명을 포함할 수 있다. 몇몇 실시예에서, 사용자는 네트워크 시스템(102)으로 광고 또는 다른 형태의 공개인 리스팅을 생성할 수 있다. 리스팅 엔진(214)은 또한 다양한 관리 특징(예를 들면, 자동-재리스팅(auto-relisting), 재고 레벨 모니터 등)을 제공함으로써 사용자가 그러한 리스팅을 관리하도록 허용한다.
메시징 엔진(216)은 메시지의 생성 및 그러한 메시지를 네트워크 시스템(102)의 사용자에게 전달하는 것을 담당한다. 그러한 메시지는, 예를 들면, 리스팅의 상태 및 최고 제시액(best offer)에 관하여 사용자에게 광고(예를 들면, 판매자에게 최고 제시액을 제안한 구매자에게 수용 통지를 제공)하거나 또는 추천을 제공하는 것을 포함한다. 메시징 엔진(216)은 다수의 메시지 전달 네트워크 및 플랫폼 중 어느 하나를 이용하여 메시지를 사용자에게 전달할 수 있다. 예를 들면, 메시징 엔진(216)은 전자 메일(e-mail), IM(instant message), SMS(Short Message Service), 텍스트, 팩시밀리, 또는 유선 네트워크(예를 들면, 인터넷), POTS(Plain Old Telephone Service) 네트워크, 또는 무선 네트워크(예를 들면, 모바일, 셀룰러, Wi-Fi, WiMAX)를 통해 음성(예를 들면, VoIP(Voice over IP) 메시지를 전달할 수 있다.
랜덤 캐릭터 시각화 엔진(218)은 개인 사용자 정보를 통신하는데 사용되는 랜덤하게 생성된 캐릭터의 생성 및 디스플레이를 관리한다. 랜덤 캐릭터 시각화 엔진(218)은 도 3과 관련하여 더 상세히 논의될 것이다.
공개 시스템(120)의 다양한 컴포넌트들이 다양한 개별 모듈 및 엔진과 관련하여 정의되었지만, 당업자는 많은 아이템이 다른 방식으로 결합되거나 조직될 수 있다는 것을 인식할 것이다. 대안으로, 도 2의 공개 시스템(120)의 모든 컴포넌트들이 이용되지는 않을 수 있다. 더욱이, 공개 시스템(120)의 모든 컴포넌트들이 도 2에 포함되지는 않을 수 있다. 일반적으로, 예시적인 실시예의 기능들과 직접적으로 연관되지 않은 컴포넌트, 프로토콜, 구조 및 기술(예를 들면, 분쟁 해결 엔진, 로열티 프로모션 엔진, 개인화 엔진 등)은 상세히 도시되거나 논의되지 않았다. 여기서 주어진 설명은 여기서 사용되는 시스템 및 방법의 이해에 있어서 독자에게 도움을 주기 위한 다양한 예시적인 실시예를 간단히 제공한다.
도 3은 랜덤 캐릭터 시각화 엔진(218)의 예시적인 실시예를 예시한 블록도이다. 예시적인 실시예에서, 랜덤 캐릭터 시각화 엔진(218)은 입력 모듈(310), 디스플레이 모듈(320), 증강 현실 모듈(330), 음성 인식 모듈(340), 랜덤 캐릭터 생성 모듈(350), 맵핑 모듈(360) 및 캐릭터 인식 모듈(370)을 포함한다. 모듈 모두는, 예를 들면, 네트워크 커플링, 공유 메모리 등을 통해 서로 통신할 수 있다. 각각의 모듈이 단일 모듈로서 구현되거나, 다른 모듈로 결합되거나 추가로 다수의 모듈로 세분화될 수 있다는 것이 이해될 것이다. 예시적인 실시예에 관련되지 않은 다른 모듈이 또한 포함될 수 있지만, 도시되지 않는다. 대안적인 실시예에서, 랜덤 캐릭터 시각화 엔진(218)에 도시된 하나 이상의 모듈이 사용되지 않을 수 있다. 예를 들면, 일부 실시예에서, 증강 현실 모듈(330)이 포함되지 않을 수 있고, 여기서 디스플레이된 이미지는 증강 현실을 사용하지 않는다.
예시적인 실시예에서, 입력 모듈(310)은 클라이언트 디바이스(110 및 112)로부터 음성 정보 또는 제스처 정보를 수신하도록 구성될 수 있다. 음성 정보는 "사진 촬영", "비디오 전송", "메시지 전송" 또는 "방향 결정"과 같은 음성 동작 또는 커맨드를 포함할 수 있다. "랜덤 캐릭터 디스플레이", "식별", "계정 로그인" 또는 "개인"과 같은 음성 커맨드는 랜덤 캐릭터를 사용하여 개인 사용자 정보가 통신되도록 요청하는데 사용될 수 있다. 부가적으로, 음성 정보는 사용자(105)에 의한 구두의 랜덤 캐릭터를 포함할 수 있다. 개인 사용자 정보는 사용자(105)가 다른 사용자로부터 은밀하게 유지하고자 하는 다양한 정보 형태, 가령, 사용자 이름 및 패스워드를 포함할 수 있다. 예를 들면, 구글 안경과 같은 키보드가 없는 웨어러블 컴퓨팅 디바이스를 착용한 사용자는 페이팔과 같은 애플리케이션을 액세스할 수 있다. 사용자 이름 캐릭터 및 패스워드 캐릭터를 말하기 위해, 음성 입력을 사용하기보다는, 구글 안경을 사용하여 페이팔에 로그인할 때, 사용자는 인근의, 엿들을 수 있는 다른 제 3 자가 사용자 이름 캐릭터 및 패스워드 캐릭터로서 인식하지 않을 랜덤 캐릭터를 말하기를 원할 수 있다. 사용자의 개인 사용자 이름 및 패스워드를 비밀로 유지하기 위해, 랜덤 캐릭터가 생성되어, 증강 현실 이미지 또는 다른 이미지로 사용자에게 디스플레이될 수 있다. 사용자에 의한 구두의 랜덤 캐릭터는 입력 모듈(310)을 통해 랜덤 캐릭터 시각화 엔진(218)에 의해 입력으로서 수신될 수 있다. 다른 실시예에서, 입력 모듈(310)은, 개인 사용자 정보를 단독으로 또는 음성 정보와 관련하여 통신하는데 사용될 수 있는 제스처(예를 들면, 터치패드 상의 스위핑 동작)와 같은 다른 형태의 입력 정보를 수신하도록 구성될 수 있다.
예시적인 실시예에서, 디스플레이 모듈(320)은 증강 현실 이미지 또는 다른 이미지를 클라이언트 디바이스(110 또는 112) 상에 디스플레이하기 위한 이미지 데이터를 제공하도록 구성될 수 있다. 이미지는 증강 현실 모듈(330)에 의해 생성될 수 있다. 예시적인 실시예에서, 증강 현실 모듈(330)은 이미지를 생성하기 위해 랜덤 캐릭터의 세트를 사용하여 표준 캐릭터의 세트를 증강하도록 구성될 수 있다. 랜덤하게 생성된 캐릭터의 세트를 사용하여 표준 캐릭터의 세트를 증강함으로써, 사용자는, 다른 사용자가 구두의 랜덤 캐릭터의 내용을 이해 또는 인식하지 않게 하면서 개인 사용자 정보를 말하도록 자신의 음성을 사용할 수 있다.
표준 캐릭터의 세트는 표준 키보드 레이아웃 또는 다른 입력 디바이스로부터 이용 가능한 캐릭터를 포함할 수 있다. 캐릭터는 문자, 수사, 숫자, 부호, 심볼, 컬러, 특수 캐릭터 및/또는 이미지를 포함할 수 있다. 특수 캐릭터는 일반적으로 키보드에 의한 데이터 입력을 위해 이용 가능한 다양한 심볼을 포함할 수 있다. 대안적인 실시예에서, 특수 캐릭터는, 랜덤 캐릭터 시각화 엔진(218)이 음성 인식을 통해 표준 캐릭터에 대응하는 것으로 인식할 수 있는 다양한 유형의 이미지를 포함할 수 있다.
예시적인 실시예에서, 사용자는, 표준 캐릭터로 스펠링될 때, 패스워드 "INNOVATION"을 가질 수 있다. 도 6a에 도시된 표(600)는 패스워드 "INNOVATION"에 대해 디스플레이된 표준 캐릭터(열(610)에 도시됨)에 대한 디스플레이된 랜덤 캐릭터(열(620)에 도시됨)로의 맵핑을 도시한다. 표(600)는 또한, 열(630)에서, 구두의 음성 입력으로서 수신된 캐릭터를 도시한다. 이미지는 문자 "I"가 랜덤 캐릭터 "Y"에 대응하고, 문자 "N"이 "CAT"의 사진을 예시한 랜덤 캐릭터에 대응할 수 있고, 문자 "O"가 "SQUARE"의 이미지의 랜덤 캐릭터에 대응할 수 있고, 문자 "V"가 랜덤 캐릭터 "π"에 대응할 수 있고, 문자 "A"가 문자 "Z"에 대응할 수 있고, 문자 "T"가 문자 "P"에 대응할 수 있다는 것을 사용자에 디스플레이할 수 있다. 사용자가 "INNOVATION"의 패스워드에 대한 음성 입력을 제공할 때, 사용자는 열(630)에 도시된 바와 같이 "Y-CAT-CAT-SQUARE-π-Z-P-Y-SQUARE-CAT"을 말한다. 대안적인 실시예에서, 랜덤 캐릭터의 세트로부터의 하나보다 더 많은 캐릭터는 표준 캐릭터의 세트로부터의 단일 표준 캐릭터에 대응할 수 있다. 일 실시예에서, 단어 "INNOVATION"에 대한 표준 캐릭터는 표준 캐릭터의 세트 내의 단어의 서브세트를 나타내고, 단어 "INNOVATION"와 연관된 랜덤 캐릭터는 랜덤 캐릭터의 세트 내의 서브세트를 나타낸다.
다른 예시적인 실시예에서, 디스플레이된 이미지는 키보드의 키 상의 표준 캐릭터에 오버레이된 랜덤한 캐릭터를 갖는 키보드의 증강된 이미지일 수 있다. 이제 도 6b를 참조하면, 키보드(650)가 디스플레이된다. 키보드(650)는 일반적인 컴퓨터 키보드 상에 디스플레이된 캐릭터를 나타내는 표준 캐릭터의 세트를 도시한다. 대안적인 실시예에서, 표준 캐릭터의 세트를 디스플레이하기 위해 다른 유형의 키보드 또는 유사한 입력 디바이스가 사용될 수 있다. 키보드의 키 상에 디스플레이되고 키보드(650)의 표준 캐릭터 "T" "Y" "U" "I" "O" "P" "G" "H" "J" "K" "L"은 다양한 랜덤 캐릭터로 증강된다. 사용자의 패스워드가 "HOTJOY"이면, 사용자는 "ONE -BLUE-GREY -TWO-BLUE-YELLOW"라고 말함으로써 다음의 음성 입력을 제공할 수 있고, 랜덤 캐릭터 시각화 엔진(218)은 (이러한 예에서 숫자 및 컬러에 의해 표현된) 이러한 랜덤 캐릭터를 인지하고, (텍스트 입력을 통해) 패스워드 "HOTJOY"를 클라이언트 디바이스 상에서 실행되는 앱의 관련 패스워드 필드에 입력할 것이다. 다양한 실시예에서, 키보드(650) 상에 디스플레이된 랜덤 캐릭터는 높은 보안 표준을 보장하기 위해 단지 일시적으로 이용 가능하다. 다음에 사용자가 패스워드 "HOTJOY"를 통신하기 위해 음성 입력을 사용하고자 할 때에, 새로운 랜덤 캐릭터가 표준 캐릭터의 세트 내의 각각의 캐릭터에 할당될 것이다. 예를 들면, 문자 "O"에는 키보드(650) 상에 디스플레이된 것보다는 상이한 컬러가 할당될 수 있다.
랜덤 캐릭터는 다양한 방식으로, 예를 들면, 키보드 상의 표준 캐릭터를 대체함으로써, 그의 대응하는 표준 캐릭터 옆에 랜덤 캐릭터를 디스플레이함으로써, 또는 표준 캐릭터의 키 상에 컬러를 디스플레이함으로써 디스플레이될 수 있다. 도 6b에 도시된 예에서, 컬러 및 숫자로 표현된 랜덤 캐릭터는 다른 대안적인 실시예에서 이미지, 픽처, 심볼, 문자 또는 다른 캐릭터로 대체될 수 있다. 이러한 예에서 키보드(650)의 키 상에 디스플레이된 표준 캐릭터의 일부만이 랜덤 캐릭터로 증강되지만, 다른 실시예는 모든 키, 키보드(650) 상의 모든 관련 키 또는 키 중 일부를 랜덤 캐릭터로 증강시킬 수 있다.
예시적인 실시예에서, 랜덤 캐릭터 생성 모듈(350)은 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터의 세트를 생성하도록 구성되고, 랜덤 캐릭터의 세트로부터의 적어도 하나의 랜덤 캐릭터는 표준 캐릭터의 세트로부터의 캐릭터에 대응한다. 다양한 실시예에서, 표준 캐릭터의 세트에 대응하는 랜덤 캐릭터의 세트는 제한된 시간 기간 동안에 또는 지정된 수의 요청에 대해 이용 가능하다. 예를 들면, 랜덤 캐릭터의 세트는 개인 사용자 정보를 통신하기 위한 단일 요청에 대해서만 이용 가능할 수 있다. 일 실시예에서, 개인 사용자 정보를 통신하기 위한 단일 요청은 사용자 이름 및/또는 패스워드를 제공함으로써 페이팔 또는 다른 애플리케이션에 로그인하는 것일 수 있다. 랜덤 캐릭터의 특정 세트의 제한된 이용 가능성을 제공함으로써, 사용자가 랜덤 캐릭터를 말하는 것을 듣는 사람이, 표준 캐릭터의 세트에 의해 표현된 바와 같은 실제 콘텐츠 캐릭터를 인지 또는 파악하는 것이 더 어려워진다.
맵핑 모듈(360)은 랜덤 캐릭터의 세트와 표준 캐릭터의 세트를 연관시키도록 구성될 수 있다. 맵핑 모듈(360), 랜덤 캐릭터 생성 모듈(350) 및 증강 현실 모듈(330)은, 다양한 실시예에서, 디스플레이 모듈(320)에 의해 사용자에게 디스플레이되는 증강 현실 이미지 또는 다른 이미지를 생성하는데 사용될 수 있다. 예시적인 실시예에서, 음성 인식 및/또는 텍스트 인식 기술은 맵핑 모듈(360) 및 캐릭터 인식 모듈(370)에 통합될 수 있다. 맵핑 모듈(360)은 구두의 랜덤 캐릭터를 표준 캐릭터의 세트로부터의 대응하는 캐릭터로 맵핑하도록 구성될 수 있다. 패스워드 "INNOVATION"에 대한 예시적인 맵핑이 도 6a의 표(600)에 도시된다. 캐릭터 인식 모듈(370)은 표준 캐릭터의 세트로부터의 대응하는 캐릭터를 사용하여 개인 사용자 정보를 인식하도록 구성될 수 있다. 일단 개인 사용자 정보의 표준 캐릭터가 인식되면, 개인 사용자 정보는 자신의 의도된 목적으로 사용되어, 예를 들면, 앱을 액세스하기 위해 패스워드를 입력할 수 있다. 일부 실시예에서, 캐릭터 인식 모듈(370)에 의해 인식된 개인 사용자 정보는 클라이언트 디바이스(예를 들면, 클라이언트 디바이스(110 및 112)) 상에서 실행되거나 액세스 가능한 애플리케이션 또는 앱에 제공될 수 있다.
예시적인 실시예에서, 입력 모듈(310)은 랜덤 캐릭터를 사용하여 개인 사용자 정보를 통신하기 위한 요청을 클라이언트 디바이스로부터 수신하도록 구성된다. 랜덤 캐릭터 생성 모듈(350)은 랜덤 캐릭터를 사용하여 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터의 세트를 생성하도록 구성되고, 랜덤 캐릭터의 세트로부터의 적어도 하나의 랜덤 캐릭터는 표준 캐릭터의 세트로부터의 캐릭터에 대응한다. 증강 현실 모듈(330)은 이미지를 생성하기 위해 표준 캐릭터의 세트를 랜덤 캐릭터의 세트로 증강시키도록 구성될 수 있다. 디스플레이 모듈(320)은 이미지를 디스플레이하기 위해 이미지 데이터를 클라이언트 디바이스에 제공하도록 구성될 수 있다.
또 다른 실시예에서, 맵핑 모듈(360)은 적어도 하나의 프로세서를 사용하여 랜덤 캐릭터의 세트와 표준 캐릭터의 세트를 연관시키도록 구성될 수 있다. 또 다른 실시예에서, 음성 인식 모듈(340)은 음성 커맨드를 사용자로부터 수신하고, 랜덤 캐릭터를 사용하여 음성 커맨드를 개인 사용자 정보를 통신하기 위한 요청으로 변환하도록 구성될 수 있다.
추가의 실시예에서, 클라이언트 디바이스는 물리적 키 또는 가상 키를 통해 사용자 입력을 수신하기 위한 키보드형 입력 디바이스를 포함하지 않는다. 다른 실시예에서, 이미지는 표준 캐릭터의 세트에 오버레이된 랜덤 캐릭터의 세트를 포함한다. 예를 들면, 이미지는 표준 캐릭터의 세트 상에 겹쳐진 랜덤 캐릭터의 세트를 갖는 표준 캐릭터의 세트를 갖는 키보드의 이미지를 포함할 수 있다. 대안적으로, 사용자에게 디스플레이된 이미지는, 도 6a에 도시된 표(600)와 같이 (증강 현실 기술을 사용하지 않고서) 차트형 포맷으로 랜덤 캐릭터의 세트로 맵핑된 표준 캐릭터의 세트를 포함할 수 있다.
도 4는 예시적인 실시예에 따른 랜덤 캐릭터의 세트를 시각화하기 위한 흐름도이다. 일 실시예에서, 방법은, 동작(410)에서, 개인 사용자 정보를 통신하기 위한 요청을 클라이언트 디바이스로부터 수신하는 것, 동작(420)에서, 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터의 세트를 생성하는 것 ― 랜덤 캐릭터의 세트로부터의 적어도 하나의 랜덤 캐릭터는 표준 캐릭터의 세트로부터의 캐릭터에 대응함 ― , 동작(430)에서, 이미지를 생성하기 위해 랜덤 캐릭터의 세트로 표준 캐릭터의 세트를 증강시키는 것, 동작(440)에서, 이미지를 디스플레이하기 위해 이미지 데이터를 클라이언트 디바이스에 제공하는 것을 포함한다. 예시적인 실시예에서, 흐름도(400)는 랜덤 캐릭터 시각화 엔진(218)으로부터의 하나 이상의 모듈을 사용하여 구현될 수 있다. 예를 들면, 흐름도(400)는 동작(410)에서의 입력 모듈(310), 동작(420)에서의 랜덤 캐릭터 생성 모듈(350) 및/또는 맵핑 모듈(360), 동작(430)에서의 증강 현실 모듈(330) 및 동작(440)에서의 디스플레이 모듈(320)을 사용하여 구현될 수 있다.
다른 실시예에서, 이미지는 표준 캐릭터의 세트로의 랜덤 캐릭터의 세트의 맵핑을 디스플레이한다. 또 다른 실시예에서, 이미지는 표준 캐릭터의 세트에 오버레이된 랜덤 캐릭터의 세트를 디스플레이한다. 추가의 실시예에서, 이미지를 생성하기 위해 랜덤 캐릭터의 세트로 표준 캐릭터의 세트를 증강시키는 것은 키보드 상에 디스플레이된 표준 캐릭터의 세트 위에 랜덤 캐릭터의 세트를 오버레이하는 것을 더 포함한다.
다른 예시적인 실시예에서, 개인 사용자 정보를 통신하기 위한 요청을 클라이언트 디바이스로부터 수신하는 것은 음성 동작을 사용자로부터 수신하는 것 및 음성 동작을 개인 사용자 정보를 통신하기 위한 요청으로 변환하는 것을 더 포함한다. 다른 실시예에서, 개인 사용자 정보를 통신하기 위한 요청을 클라이언트 디바이스로부터 수신하는 것은 제스처 커맨드를 사용자로부터 수신하는 것, 및 제스처 커맨드를 개인 사용자 정보를 통신하기 위한 요청으로 변환하는 것을 더 포함한다.
추가의 실시예에서, 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터의 세트를 생성하는 것은 랜덤 캐릭터의 세트를 표준 캐릭터의 세트로 맵핑하는 것을 더 포함한다. 다른 실시예에서, 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터의 세트를 생성하는 것은 표준 캐릭터의 세트의 각각의 표준 캐릭터에 대응하는 적어도 하나의 랜덤 캐릭터를 생성하는 것을 더 포함하고, 적어도 하나의 랜덤 캐릭터는 하나 이상의 문자, 숫자 또는 특수 심볼을 나타낸다. 일부 실시예에서, 표준 캐릭터의 세트는 하나 이상의 문자, 숫자 또는 특수 심볼을 포함하여 표준 키보드 레이아웃 상에서 이용 가능한 캐릭터를 나타낸다.
도 5는 예시적인 실시예에 따른 개인 사용자 정보를 제공하기 위해 음성 입력을 사용하는 방법(500)의 흐름도이다. 일 실시예에서, 방법은, 동작(510)에서, 이미지에서 디스플레이된 랜덤 캐릭터로부터 구두의 캐릭터를 나타내는 개인 사용자 정보를 클라이언트 디바이스로부터 수신하는 것, 동작(520)에서, 랜덤 캐릭터의 세트로부터의 구두의 캐릭터를 표준 캐릭터의 세트로부터의 대응하는 캐릭터로 맵핑하는 것, 동작(530)에서, 표준 캐릭터의 세트로부터의 대응하는 캐릭터를 사용하여 개인 사용자 정보를 인식하는 것, 동작(540)에서, 표준 캐릭터의 세트로부터의 대응하는 캐릭터를 사용하여 개인 사용자 정보를 클라이언트 디바이스에 제공하는 것을 포함한다. 대안적인 실시예에서, 동작(540)은 선택적일 수 있다. 예시적인 실시예에서, 흐름도(500)는 랜덤 캐릭터 시각화 엔진(218)으로부터의 하나 이상의 모듈을 사용하여 구현될 수 있다. 예를 들면, 흐름도(500)는 동작(510)에서의 입력 모듈(310), 동작(520)에서의 맵핑 모듈(360), 동작(530)에서의 캐릭터 인식 모듈(370) 및 동작(540)에서의 디스플레이 모듈(320)을 사용하여 구현될 수 있다.
방법의 흐름도(400 및 500)는 도 4 및 도 5에 도시된 실시예에서 몇몇의 동작을 포함한다. 대안적인 실시예에서, 흐름도(400 및 500)에 도시된 동작 중 하나 이상이 수행되지 않을 수 있고, 또 다른 실시예에서, 부가적인 동작(흐름도(400 및 500)에 도시되지 않음)이 수행될 수 있다. 또 다른 실시예에서, 동작 중 하나 이상은 단일 동작으로 결합되거나 다수의 동작으로 세분화될 수 있다. 다른 예시적인 실시예에서, 흐름도(400 및 500)는 흐름도(400 및 500) 내의 하나 이상의 동작을 포함하도록 결합될 수 있다. 예를 들면, 흐름도(400 및 500) 내의 하나 이상의 동작은 랜덤 캐릭터의 생성, 랜덤 캐릭터의 시각화, 랜덤 캐릭터의 음성 입력의 수신, 및 랜덤 캐릭터의 맵핑 및 인식을 수행하도록 결합될 수 있다.
모듈, 컴포넌트 및 로직
부가적으로, 본 명세서에 기술된 특정 실시예는 로직, 또는 다수의 모듈, 엔진, 컴포넌트, 또는 메커니즘으로서 구현될 수 있다. 모듈, 엔진, 로직, 컴포넌트, 또는 메커니즘(집합적으로 "모듈"이라 칭함)은 임의의 동작들을 수행할 수 있는 유형의 유닛으로 임의의 방식으로 구성 또는 정렬될 수 있다. 임의의 예시적 실시예에서, 하나 이상의 컴퓨터 시스템(예를 들면, 독립형, 클라이언트, 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템의 하나 이상의 컴포넌트(예를 들면, 프로세서 또는 프로세서 그룹)가 소프트웨어(예를 들면, 애플리케이션 또는 애플리케이션 부분) 또는 펌웨어에 의해 본 명세서에 기술된 임의의 동작들을 수행하도록 동작하는 모듈로서 구성될 수 있다(소프트웨어 및 펌웨어는 당업자에 의해 알려진 바와 같이 일반적으로 상호 교환 가능하게 사용될 수 있음을 유의하자).
다양한 실시예에서, 모듈은 기계적으로 또는 전자적으로 구현될 수 있다. 예를 들면, 모듈은 임의의 동작을 수행하기 위해 영구적으로 (예를 들면, 특수 목적 프로세서, ASIC(application specific integrated circuit), 또는 어레이 내에) 구성된 전용 회로 또는 로직을 포함할 수 있다. 모듈은 또한 임의의 동작을 수행하기 위해 소프트웨어 또는 펌웨어에 의해 임시로 구성되는 (예를 들면, 범용 프로세서 또는 다른 프로그래밍 가능한 프로세서 내에 포괄되는 것과 같은) 프로그래밍 가능한 로직 또는 회로를 포함할 수 있다. 모듈을 기계적으로 구현할지, 전용의 영구 구성 회로에서 구현할지, 아니면 임시 구성 회로(예를 들면, 소프트웨어에 의해 구성됨)에서 구현할지에 대한 결정은, 예를 들면, 비용, 시간, 에너지 사용, 및 패키지 사이즈의 고려사항들에 따라 좌우될 수 있다는 것이 이해될 것이다.
따라서, "모듈"이라는 용어는 여기에 기술된 임의의 동작들을 수행하거나 임의의 방식으로 동작시키도록 물리적으로 구성되거나, 영구적으로 구성되거나(예를 들면, 하드웨어에 내장), 임시로 구성되는(예를 들면, 프로그래밍) 개체인 유형의 개체를 포괄하는 것으로 이해되어야 한다. 모듈들 또는 컴포넌트들이 임시로 구성되는(예를 들면, 프로그래밍됨) 실시예를 고려할 때, 모듈들 또는 컴포넌트들 각각이 시간적으로 임의의 한 순간에 구성되거나 예시되지 않아도 된다. 예를 들면, 모듈들이나 컴포넌트들은 소프트웨어를 이용하여 구성된 범용 프로세서를 포함하고, 범용 프로세서는 상이한 시간대에 상이한 개별 모듈들로서 구성될 수 있다. 그에 따라 소프트웨어는 특정 모듈을 시간상 한 시점에서 구성하고, 다른 모듈은 시간상 다른 시점에서 구성하도록 프로세서를 구성할 수 있다.
모듈은 다른 모듈로 정보를 제공하고 다른 모듈로부터 정보를 수신할 수 있다. 따라서, 기술된 모듈들은 통신 가능하게 연결되어 있다고 간주될 수 있다. 그러한 모듈 여러 개가 동시에 존재하는 경우, 통신은 그 모듈들을 연결하는 신호 전송을 통해(예를 들면, 적절한 회로 및 버스를 통해) 행해질 수 있다. 여러 모듈이 상이한 시간대에 구성되거나 예시되는 실시예에서, 그러한 모듈들 간의 통신은 예를 들면, 그 여러 모듈들이 액세스하는 메모리 구조의 정보 저장 및 검색을 통해 달성될 수 있다. 예를 들면, 한 모듈은 동작을 수행하고 그 동작의 출력을 이 모듈이 통신 가능하게 연결된 메모리 디바이스 내에 저장할 수 있다. 다음에, 또 다른 모듈이 나중 어느 시점에 그 메모리 디바이스에 액세스하여 저장된 출력을 검색 및 처리할 수 있다. 모듈들은 또한 입력 또는 출력 디바이스들과의 통신을 개시할 수 있고, 리소스(예를 들면, 정보의 집합)에 대해 동작할 수 있다.
예시적인 머신 아키텍처 및 머신-판독 가능 매체
도 7을 참조하면, 예시적 실시예는 컴퓨터 시스템(700)의 예시적 형태인 머신으로 확장되고, 그 내에서 머신으로 하여금 여기서 논의된 방법론들 중 하나 이상을 수행하도록 하는 명령어들이 실행될 수 있다. 다른 대안적인 예시적 실시예에서, 머신은 독립형 디바이스로서 동작하거나, 다른 머신들과 연결(예를 들면, 네트워킹)될 수 있다. 네트워크 배치에 있어서, 머신은 서버-클라이언트 네트워크 환경 또는 n-티어 네트워크의 서버 또는 클라이언트 머신의 자격으로 동작하거나, 피어-투-피어(peer-to-peer)(또는 분산형) 네트워크 환경 또는 가상화된 클라우드 컴퓨팅 환경의 피어 머신으로서 동작할 수 있다. 머신은 퍼스널 컴퓨터(PC), 웨어러블 컴퓨팅 디바이스, 태블릿 PC, 셋톱박스(STB), PDA(personal digital assistant), 셀룰러 전화기, 웹 어플라이언스, 네트워크 라우터, 스위치 또는 브릿지, 또는 그 머신에 의해 취해질 동작을 특정하는 (순차적이거나 그렇지 않은) 명령어들을 실행할 수 있는 임의의 머신일 수 있다. 더욱이, 단일의 머신만이 예시되었지만, "머신"이라는 용어는 또한 본 명세서에서 논의된 방법론들 중 어느 하나 이상을 수행하기 위한 명령어들의 세트(또는 여러 세트)를 개별적으로나 공동으로 실행하는 머신들의 임의의 집합을 포함하는 것으로 이해되어야 한다.
예시적 컴퓨터 시스템(700)은 버스(708)를 통해 서로 통신하는 프로세서(702)(예를 들면, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 또는 둘 모두)), 주 메모리(704) 및 정적 메모리(706)를 포함할 수 있다. 컴퓨터 시스템(700)은 비디오 디스플레이 유닛(710)(예를 들면, 액정 디스플레이(LCD)나 음극선관(CRT))를 더 포함할 수 있다. 예시적 실시예에서, 컴퓨터 시스템(700)은 또한 영자 숫자 입력 디바이스(712)(예를 들면, 키보드), 사용자 인터페이스(UI) 내비게이션 디바이스 또는 커서 제어 디바이스(714)(예를 들면, 마우스), 저장 유닛(716), 신호 생성 디바이스(718)(예를 들면, 스피커), 및 네트워크 인터페이스 디바이스(720) 중 하나 이상을 포함한다.
머신-판독 가능 저장 매체
저장 유닛(716)은 본 명세서에서 논의된 방법론들이나 기능들 중 임의의 하나 이상을 실시하거나 그에 의해 사용되는 하나 이상의 명령어 세트(724) 및 데이터 구조(예를 들면, 소프트웨어 명령어들)가 저장되어 있는 머신 판독 가능 저장 매체(722)를 포함한다. 명령어(724)는 또한 컴퓨터 시스템(700)에 의한 실행 도중에 주 메모리(704) 내부 또는 프로세서(702) 내부에 전체적으로, 또는 적어도 일부가 상주할 수 있으며, 주 메모리(704)와 프로세서(702) 또한 머신 판독 가능 매체를 구성한다.
머신 판독 가능 저장 매체(722)는 예시적 실시예에서 단일 매체로서 도시되지만, "머신 판독 가능 저장 매체"라는 용어는 하나 이상의 명령어들을 저장하는 단일 매체나 다수의 매체들(예를 들면, 중앙집중 또는 분산형 데이터베이스, 또는 관련 캐시 및 서버)을 포함할 수 있다. "머신 판독 가능 매체"라는 용어는 또한, 머신에 의해 실행될 명령어를 저장하거나 인코딩하거나 운반할 수 있고 머신으로 하여금 본 발명의 실시예의 방법론들 중 임의의 하나 이상을 수행하게 하거나, 그러한 명령어에 의해 사용되거나 그 명령어와 관련된 데이터 구조를 저장하거나, 인코딩하거나, 운반할 수 있는 임의의 유형의 매체를 포함하는 것으로 간주 되어야 한다. 따라서, "머신 판독 가능 저장 매체"라는 용어는 고체 상태 메모리 및 광학 및 자기 매체를 포함하지만 그에 국한되지 않는 것이라고 간주 되어야 한다. 머신 판독 가능 저장 매체의 특정 예들로는 예를 들면 반도체 메모리 소자(예를 들면, EPROM(Erasable Programmable Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), 및 플래시 메모리 소자)와, 내부의 하드 디스크 및 탈부착 가능한 디스크와 같은 자기 디스크와, 광자기 디스크, 및 CD-ROM과 DVD-ROM 디스크를 포함하는 비휘발성 메모리를 포함한다.
전송 매체
명령어(724)는 네트워크 인터페이스 디바이스(720)를 통한 전송 매체를 이용하고 다수의 공지된 전송 프로토콜 중 어느 하나(예를 들면, HTTP)를 활용하는 통신 네트워크(726)를 통해 또한 전송 또는 수신될 수 있다. 통신 네트워크의 예는 LAN(local area network), WAN(wide area network), 인터넷, 모바일 전화 네트워크, POTS(PlainOld Telephone) 네트워크, 및 무선 데이터 네트워크(예를 들면, WiFi 및 WiMax 네트워크)를 포함한다. "전송 매체"라는 용어는 머신에 의해 실행될 명령어들의 저장, 인코딩, 또는 운반이 가능한 임의의 무형 매체를 포함하는 것으로 간주되어야 하고, 그러한 소프트웨어의 통신을 도모하기 위한 디지털 또는 아날로그 통신 신호 또는 기타 무형의 매체를 포함한다.
본 발명의 주제에 대한 검토는 특정한 예시적 실시예를 참고하여 기술되었지만, 본 발명의 실시예에 대해 보다 넓은 개념과 범위에서 벗어나지 않고 그 실시예에 대한 다양한 변형 및 변경이 이뤄질 수 있을 것이다. 본 발명의 주제에 대한 그러한 실시예는, 여기서, 단지 편리성을 도모할 뿐, 본 출원의 범위를 사실상 둘 이상이 개시된 경우 임의의 하나의 발명 또는 발명의 개념에 자발적으로 한정하도록 의도하지 않고, "발명"이라는 용어를 사용하여 개별적으로나 집합적으로 참고될 수 있다.
본 명세서에 예시된 실시예들은 당업자가 개시된 교시 내용을 실시할 수 있게 하도록 충분히 상세하게 기술된다. 다른 실시예가 사용되고 그로부터 파생됨으로써, 본 개시 사항의 범위로부터 벗어나지 않고 구조적이고 논리적인 치환 및 변경이 이뤄질 수 있다. 따라서, 상세한 설명은 한정의 의미로 취급돼서는 안 되며, 다양한 실시예의 범위는 첨부된 청구범위 및 그 청구범위에 수반되는 균등물의 총체적 범위에 의해서만 정의된다.
또한, 본 명세서에 기술된 리소스들, 동작들, 또는 구조들의 복수형은 단수형으로 제공될 수 있다. 또한, 다양한 리소스, 동작, 모듈, 엔진, 및 데이터 저장부들 사이의 경계는 어느 정도 임의적이며, 특정 동작은 특정한 예시적 구성의 맥락에서 예시된다. 기능에 대한 다른 지정이 고려되며 그것이 본 발명의 다양한 실시예의 범위 내에 들어올 수 있다. 일반적으로 예시적 구성상 별개의 리소스로 제시된 구조 및 기능은 결합된 구조 또는 리소스로 구현될 수 있다. 마찬가지로, 하나의 리소스로 제시된 구조 및 기능은 개별 리소스로서 구현될 수 있다. 이러한 다른 변경, 수정, 추가 및 개량은 첨부된 청구범위에 의해 나타낸 바와 같은 본 발명의 실시예의 범위 내에 포함된다. 따라서, 명세서와 도면은 한정의 의미로서가 아니라 예시적인 것으로 간주되어야 한다.

Claims (20)

  1. 클라이언트 디바이스로부터, 개인 사용자 정보(private user information)를 통신하기 위한 요청을 수신하는 단계와,
    상기 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터(random character)의 세트를 생성하는 단계 ― 상기 랜덤 캐릭터의 세트로부터의 적어도 하나의 랜덤 캐릭터는 표준 캐릭터의 세트로부터의 캐릭터에 대응함 ― 와,
    적어도 하나의 프로세서를 사용하여, 이미지를 생성하기 위해 상기 랜덤 캐릭터의 세트로 상기 표준 캐릭터의 세트를 증강시키는 단계와,
    상기 이미지를 디스플레이하기 위해 이미지 데이터를 상기 클라이언트 디바이스에 제공하는 단계를 포함하는
    방법.
  2. 제 1 항에 있어서,
    상기 이미지는 상기 표준 캐릭터의 세트에 대한 상기 랜덤 캐릭터의 세트의 맵핑(mapping)을 디스플레이하는
    방법.
  3. 제 1 항에 있어서,
    상기 이미지는 상기 표준 캐릭터의 세트에 오버레이된 상기 랜덤 캐릭터의 세트를 디스플레이하는
    방법.
  4. 제 1 항에 있어서,
    상기 증강시키는 단계는,
    키보드 이미지 상의 상기 표준 캐릭터의 세트 위에 상기 랜덤 캐릭터의 세트를 오버레이하는 단계를 더 포함하는
    방법.
  5. 제 1 항에 있어서,
    상기 클라이언트 디바이스로부터, 개인 사용자 정보를 통신하기 위한 요청을 수신하는 단계는,
    사용자로부터, 음성 동작을 수신하는 단계와,
    상기 음성 동작을 상기 개인 사용자 정보를 통신하기 위한 요청으로 변환하는 단계를 더 포함하는
    방법.
  6. 제 1 항에 있어서,
    상기 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터의 세트를 생성하는 단계는,
    상기 랜덤 캐릭터의 세트를 상기 표준 캐릭터의 세트에 맵핑하는 단계를 더 포함하는
    방법.
  7. 제 1 항에 있어서,
    상기 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터의 세트를 생성하는 단계는,
    상기 표준 캐릭터의 세트 내의 각각의 캐릭터에 대응하는 적어도 하나의 랜덤 캐릭터를 생성하는 단계를 더 포함하고,
    상기 적어도 하나의 랜덤 캐릭터는 하나 이상의 문자, 숫자, 컬러, 이미지 또는 심볼을 표현하는
    방법.
  8. 제 7 항에 있어서,
    상기 표준 캐릭터의 세트는 하나 이상의 문자, 숫자, 컬러, 이미지 또는 심볼을 포함하여 표준 키보드 상에서 이용 가능한 캐릭터를 표현하는
    방법.
  9. 제 1 항에 있어서,
    상기 클라이언트 디바이스로부터, 상기 이미지에서 디스플레이된 상기 랜덤 캐릭터의 세트로부터의 구두의 캐릭터를 표현하는 개인 사용자 정보를 수신하는 단계를 더 포함하는
    방법.
  10. 제 9 항에 있어서,
    상기 랜덤 캐릭터의 세트로부터의 상기 구두의 캐릭터를 상기 표준 캐릭터의 세트로부터의 대응하는 캐릭터에 맵핑하는 단계와,
    상기 표준 캐릭터의 세트로부터의 대응하는 캐릭터를 사용하여 상기 개인 사용자 정보를 인식하는 단계와,
    상기 표준 캐릭터의 세트로부터의 대응하는 캐릭터를 사용하여 상기 개인 사용자 정보를 상기 클라이언트 디바이스에 제공하는 단계를 더 포함하는
    방법.
  11. 제 10 항에 있어서,
    상기 개인 사용자 정보는 상기 클라이언트 디바이스 상에서 액세스 가능한 애플리케이션에 로그인하기 위한 패스워드 정보 또는 사용자 계정 정보를 표현하는
    방법.
  12. 머신의 적어도 하나의 프로세서와,
    클라이언트 디바이스로부터, 랜덤 캐릭터를 사용하여 개인 사용자 정보를 통신하기 위한 요청을 수신하도록 구성된 입력 모듈과,
    상기 적어도 하나의 프로세서를 사용하여, 상기 랜덤 캐릭터를 사용하여 상기 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터의 세트를 생성하도록 구성된 랜덤 캐릭터 생성 모듈 ― 상기 랜덤 캐릭터의 세트로부터의 적어도 하나의 랜덤 캐릭터는 표준 캐릭터의 세트로부터의 캐릭터에 대응함 ― 과,
    상기 적어도 하나의 프로세서를 사용하여, 이미지를 생성하기 위해 상기 랜덤 캐릭터의 세트로 상기 표준 캐릭터의 세트를 증강시키도록 구성된 증강 현실 모듈(augmented reality module)과,
    상기 이미지를 디스플레이하기 위해 이미지 데이터를 상기 클라이언트 디바이스에 제공하도록 구성된 디스플레이 모듈을 포함하는
    시스템.
  13. 제 12 항에 있어서,
    상기 적어도 하나의 프로세서를 사용하여, 상기 랜덤 캐릭터의 세트와 상기 표준 캐릭터의 세트를 연관시키도록 구성된 맵핑 모듈을 더 포함하는
    시스템.
  14. 제 12 항에 있어서,
    음성 인식 모듈을 더 포함하고, 상기 음성 인식 모듈은,
    사용자로부터, 음성 동작을 수신하고,
    랜덤 캐릭터를 사용하여 상기 음성 동작을 상기 개인 사용자 정보를 통신하기 위한 요청으로 변환하도록 구성되는
    시스템.
  15. 제 12 항에 있어서,
    상기 이미지는 상기 표준 캐릭터의 세트에 오버레이된 상기 랜덤 캐릭터의 세트를 디스플레이하는
    시스템.
  16. 제 12 항에 있어서,
    상기 입력 모듈은 상기 이미지에서 디스플레이된 상기 랜덤 캐릭터의 세트로부터의 구두의 캐릭터를 나타내는 개인 사용자 정보를 상기 클라이언트 디바이스로부터 수신하도록 더 구성되는
    시스템.
  17. 제 16 항에 있어서,
    캐릭터 인식 모듈을 더 포함하고, 상기 캐릭터 인식 모듈은,
    상기 랜덤 캐릭터의 세트로부터의 구두의 캐릭터를 상기 표준 캐릭터의 세트로부터의 대응하는 캐릭터에 맵핑하고,
    상기 표준 캐릭터의 세트로부터의 대응하는 캐릭터를 사용하여 상기 개인 사용자 정보를 인식하고,
    상기 표준 캐릭터의 세트로부터의 대응하는 캐릭터를 사용하여 상기 개인 사용자 정보를 상기 클라이언트 디바이스에 제공하도록 더 구성되는
    시스템.
  18. 제 17 항에 있어서,
    상기 개인 사용자 정보는 상기 클라이언트 디바이스 상에서 액세스 가능한 애플리케이션에 로그인하기 위한 패스워드 정보 또는 사용자 계정 정보를 표현하는
    시스템.
  19. 제 12 항에 있어서,
    상기 클라이언트 디바이스는 물리적 키를 통해 사용자 입력을 수신하기 위한 키보드형 입력 디바이스를 포함하지 않는
    시스템.
  20. 명령어를 포함하는 머신-판독 가능 저장 매체로서,
    상기 명령어는, 프로세서 상에서 실행될 때, 상기 프로세서로 하여금 방법을 수행하게 하고, 상기 방법은,
    클라이언트 디바이스로부터, 개인 사용자 정보를 통신하기 위한 요청을 수신하는 단계와,
    상기 개인 사용자 정보를 통신하기 위한 요청에 응답하여 랜덤 캐릭터의 세트를 생성하는 단계 ― 상기 랜덤 캐릭터의 세트로부터의 적어도 하나의 랜덤 캐릭터는 표준 캐릭터의 세트로부터의 캐릭터에 대응함 ― 와,
    적어도 하나의 프로세서를 사용하여, 이미지를 생성하기 위해 상기 랜덤 캐릭터의 세트로 상기 표준 캐릭터의 세트를 증강시키는 단계와,
    상기 이미지를 디스플레이하기 위해 이미지 데이터를 상기 클라이언트 디바이스에 제공하는 단계를 포함하는
    머신-판독 가능 저장 매체.
KR1020167028175A 2014-03-12 2015-03-11 키보드가 없는 디바이스를 위한 랜덤 캐릭터의 시각화 기법 KR101831095B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/207,369 2014-03-12
US14/207,369 US20150261968A1 (en) 2014-03-12 2014-03-12 Visualizing random characters for keyboard-less devices
PCT/US2015/020017 WO2015138640A1 (en) 2014-03-12 2015-03-11 Visualizing random characters for keyboard-less devices

Publications (2)

Publication Number Publication Date
KR20160132085A true KR20160132085A (ko) 2016-11-16
KR101831095B1 KR101831095B1 (ko) 2018-02-21

Family

ID=54069186

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167028175A KR101831095B1 (ko) 2014-03-12 2015-03-11 키보드가 없는 디바이스를 위한 랜덤 캐릭터의 시각화 기법

Country Status (7)

Country Link
US (1) US20150261968A1 (ko)
EP (1) EP3117296B1 (ko)
KR (1) KR101831095B1 (ko)
CN (1) CN106233293B (ko)
AU (1) AU2015229393B2 (ko)
CA (1) CA2942146C (ko)
WO (1) WO2015138640A1 (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201212878D0 (en) 2012-07-20 2012-09-05 Pike Justin Authentication method and system
US10373149B1 (en) 2012-11-12 2019-08-06 Square, Inc. Secure data entry using a card reader with minimal display and input capabilities having a display
US9613353B1 (en) 2013-12-26 2017-04-04 Square, Inc. Passcode entry through motion sensing
US9430635B2 (en) * 2014-10-29 2016-08-30 Square, Inc. Secure display element
US9483653B2 (en) * 2014-10-29 2016-11-01 Square, Inc. Secure display element
US10673622B2 (en) 2014-11-14 2020-06-02 Square, Inc. Cryptographic shader in display hardware
GB201520741D0 (en) * 2015-05-27 2016-01-06 Mypinpad Ltd And Licentia Group Ltd Authentication methods and systems
US11609958B1 (en) * 2015-07-17 2023-03-21 EMC IP Holding Company LLC System and method for managing log records of elements of a distributed computing environment
CN107122041A (zh) * 2017-03-22 2017-09-01 广州阿里巴巴文学信息技术有限公司 密码输入方法、设备、客户端设备和虚拟现实设备
CN107368184B (zh) 2017-05-12 2020-04-14 阿里巴巴集团控股有限公司 一种虚拟现实场景中的密码输入方法和装置
US10509922B2 (en) * 2017-09-28 2019-12-17 Verizon Patent And Licensing Inc. Systems and methods for masking user input and sensor data at a user device
WO2020101390A1 (en) * 2018-11-14 2020-05-22 Samsung Electronics Co., Ltd. Wearable device for displaying content, and method thereof
CN114138112A (zh) * 2021-11-22 2022-03-04 瑞欧威尔(上海)智能科技有限公司 一种头戴式智能设备产品的高效聚合ocr输入法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7606712B1 (en) * 2001-06-28 2009-10-20 At&T Intellectual Property Ii, L.P. Speech recognition interface for voice actuation of legacy systems
US20040073809A1 (en) * 2002-10-10 2004-04-15 Wing Keong Bernard Ignatius Ng System and method for securing a user verification on a network using cursor control
US20070052672A1 (en) * 2005-09-08 2007-03-08 Swisscom Mobile Ag Communication device, system and method
US20070269248A1 (en) * 2006-05-18 2007-11-22 Lorraine Jeanette Markotic Word input keyboard
US20080148186A1 (en) * 2006-12-18 2008-06-19 Krishnamurthy Sandeep Raman Secure data entry device and method
WO2008076969A2 (en) * 2006-12-18 2008-06-26 Semantic Compaction Systems An apparatus, method and computer readable medium for chinese character selection and output
US20090044282A1 (en) * 2007-08-09 2009-02-12 Technology Properties Limited System and Method for Generating and Displaying a Keyboard Comprising a Random Layout of Keys
CN101577619B (zh) * 2008-05-08 2013-05-01 吴志军 基于信息隐藏的实时语音保密通信系统
US8082448B2 (en) * 2008-10-28 2011-12-20 Xerox Corporation System and method for user authentication using non-language words
US8191126B2 (en) * 2009-05-04 2012-05-29 Indian Institute Of Technology Madras Methods and devices for pattern-based user authentication
US8416193B2 (en) * 2009-05-21 2013-04-09 Microsoft Corporation Method of visualizing an input location
EP2339576B1 (en) * 2009-12-23 2019-08-07 Google LLC Multi-modal input on an electronic device
AU2011220382A1 (en) * 2010-02-28 2012-10-18 Microsoft Corporation Local advertising content on an interactive head-mounted eyepiece
US9258296B2 (en) * 2010-07-29 2016-02-09 Nirmal Juthani System and method for generating a strong multi factor personalized server key from a simple user password
US8520848B1 (en) * 2011-03-14 2013-08-27 Trend Micro, Inc. Secure password management using keyboard layout
US8625847B2 (en) * 2011-03-21 2014-01-07 Blackberry Limited Login method based on direction of gaze
US20120297187A1 (en) * 2011-05-17 2012-11-22 Google Inc. Trusted Mobile Device Based Security
US8903726B2 (en) * 2012-05-03 2014-12-02 International Business Machines Corporation Voice entry of sensitive information
US20140035819A1 (en) * 2012-08-03 2014-02-06 Research In Motion Limited Method and Apparatus Pertaining to an Augmented-Reality Keyboard
US20140098141A1 (en) * 2012-10-10 2014-04-10 At&T Intellectual Property I, L.P. Method and Apparatus for Securing Input of Information via Software Keyboards
GB2516419A (en) * 2013-06-14 2015-01-28 Mastercard International Inc A voice-controlled computer system

Also Published As

Publication number Publication date
AU2015229393B2 (en) 2017-07-20
KR101831095B1 (ko) 2018-02-21
WO2015138640A1 (en) 2015-09-17
EP3117296A1 (en) 2017-01-18
EP3117296A4 (en) 2017-09-27
CN106233293A (zh) 2016-12-14
CA2942146C (en) 2019-10-29
US20150261968A1 (en) 2015-09-17
AU2015229393A1 (en) 2016-09-22
EP3117296B1 (en) 2020-04-22
CN106233293B (zh) 2019-11-22
CA2942146A1 (en) 2015-09-17

Similar Documents

Publication Publication Date Title
KR101831095B1 (ko) 키보드가 없는 디바이스를 위한 랜덤 캐릭터의 시각화 기법
US11257113B2 (en) Interactive user interface based on analysis of chat messages content
US11922483B2 (en) Social media buttons with payment capability
JP6725549B2 (ja) 通信セッションの状態の保存
US11303732B2 (en) Commerce oriented uniform resource locater (URL) shortener
US9767448B2 (en) User-friendly transaction interface
JP6991211B2 (ja) デバイスおよびシステムに依存しない電子支払トークンの提供
US11037202B2 (en) Contextual data in augmented reality processing for item recommendations
KR101658296B1 (ko) 증강 현실을 이용한 아이템들의 시각화
US11544773B2 (en) Device, method, and non-transitory machine-readable medium for a single page slide checkout
KR20160042963A (ko) 전자상거래 결제를 용이하게 하는 방법 및 시스템
KR102050701B1 (ko) 네이티브 판매 플랫폼
KR20210107921A (ko) 소셜 네트워킹 시스템을 사용하여 제3자 상점의 쇼핑 카트에 상품을 추가하기 위한 시스템 및 방법
WO2019125578A1 (en) Virtual point of sale
CN108475368B (zh) 具有第三方参与可选项目的键盘应用程序
CA2949184A1 (en) Transactional, digital image-based asynchronous electronic communication
US10754518B1 (en) Techniques for providing customized user interface components in a push notification
US11966909B2 (en) Text messaging service based commerce system
US20160063598A1 (en) Social gifting

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