Apparatus, system, and method of executing a transaction based on wireless-based proximity detection
Patent Information
- Application Number
- PCT/IB2025/050400
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-14
- Filing Date
- 2025-01-14
- Publication Date
- 2025-08-21
AI Technical Summary
Existing wireless communication technologies face challenges in efficiently facilitating transactions between devices based on proximity detection, particularly for near-field interactions such as 'tap and pay' scenarios, where precise identification and validation of devices in close proximity are required for secure and efficient transactions.
A system and method utilizing wireless-based proximity detection mechanisms, including Bluetooth Low Energy (BLE) communication, to identify and validate devices in close proximity for transactions, using proximity-detection techniques based on signal strength and magnetic measurements, enabling secure and efficient 'tap and pay' procedures.
Enables secure and efficient execution of transactions, such as 'tap and pay', by accurately identifying and validating devices in close proximity, supporting both online and offline transaction verification.
Smart Images

Figure IB2025050400_21082025_PF_FP_ABST
Abstract
Description
APPARATUS, SYSTEM, AND METHOD OF EXECUTING A TRANSACTION BASED ON WIRELESS-BASED PROXIMITY DETECTIONCROSS-REFERENCE
[0001] This application claims the benefit of and priority from US Provisional PatentApplication No. 63 / 620,842, entitled “APPARATUS, SYSTEM, AND METHOD OF PROXIMITY-BASED WIRELESS COMMUNICATION”, filed January 14, 2024, the entire disclosure of which is incorporated herein by reference.BACKGROUND
[0002] Near Field Communication (NFC) is a technology which is configured to support communication between two electronic devices over a relatively short range.BRIEF DESCRIPTION OF THE DRAWINGS
[0003] For simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity of presentation. Furthermore, reference numerals may be repeated among the figures to indicate corresponding or analogous elements. The figures are listed below.
[0004] Fig. 1 is a schematic block diagram illustration of a system, in accordance with some demonstrative aspects.
[0005] Fig. 2(a)-2(c) are schematic flow-chart illustrations of a method of executing a transaction based on wireless-based proximity detection, in accordance with some demonstrative aspects.
[0006] Fig. 3 is a schematic illustration of a sequence diagram of operations and communications between a first wireless communication device, a second wireless communication device, and a server, in accordance with some demonstrative aspects.
[0007] Fig. 4 is a schematic illustration of a sequence diagram of operations and communications between a first wireless communication device, a second wireless communication device, and a server, in accordance with some demonstrative aspects.
[0008] Fig. 5 is a schematic flow-chart illustration of a method of executing a transaction based on wireless-based proximity detection, in accordance with some demonstrative aspects.
[0009] Fig. 6 is a schematic flow-chart illustration of a method of executing a transaction based on wireless-based proximity detection, in accordance with some demonstrative aspects.
[0010] Fig. 7 is a schematic illustration of a product of manufacture, in accordance with some demonstrative aspects.DETAILED DESCRIPTION
[0011] In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of some aspects. However, it will be understood by persons of ordinary skill in the art that some aspects may be practiced without these specific details. In other instances, well-known methods, procedures, components, units and / or circuits have not been described in detail so as not to obscure the discussion.
[0012] Some portions of the following detailed description are presented in terms of algorithms and symbolic representations of operations on data bits or binary digital signals within a computer memory. These algorithmic descriptions and representations may be the techniques used by those skilled in the data processing arts to convey the substance of their work to others skilled in the art.
[0013] An algorithm is here, and generally, considered to be a self-consistent sequence of acts or operations leading to a desired result. These include physical manipulations of physical quantities. Usually, though not necessarily, these quantities capture the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers or the like. It should be understood, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities.
[0014] Discussions herein utilizing terms such as, for example, “processing”, “computing”, “calculating”, “determining”, “establishing”, “analyzing”, “checking”, or the like, may refer to operation(s) and / or process(es) of a computer, a computing platform, a computing system, or other electronic computing device, that manipulate and / or transform data represented as physical (e.g., electronic) quantities within the computer’s registers and / or memories into other data similarly represented as physical quantities within the computer’s registers and / or memories or other information storage medium that may store instructions to perform operations and / or processes.
[0015] The terms “plurality” and “a plurality”, as used herein, include, for example, “multiple” or “two or more”. For example, “a plurality of items” includes two or more items.
[0016] The words "exemplary" and “demonstrative” are used herein to mean "serving as an example, instance, demonstration, or illustration". Any aspect, or design described herein as "exemplary" or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects, or designs.
[0017] References to “one aspect”, “an aspect”, “demonstrative aspect”, “various aspects” etc., indicate that the aspect(s) so described may include a particular feature, structure, or characteristic, but not every aspect necessarily includes the particular feature, structure, or characteristic. Further, repeated use of the phrase “in one aspect” does not necessarily refer to the same aspect, although it may.
[0018] As used herein, unless otherwise specified the use of the ordinal adjectives “first”, “second”, “third” etc., to describe a common object, merely indicate that different instances of like objects are being referred to, and are not intended to imply that the objects so described must be in a given sequence, either temporally, spatially, in ranking, or in any other manner.
[0019] The phrases “at least one” and “one or more” may be understood to include a numerical quantity greater than or equal to one, e.g., one, two, three, four, [...], etc. The phrase "at least one of" with regard to a group of elements may be used herein to mean at least one element from the group consisting of the elements. For example, the phrase "at least one of" with regard to a group of elements may be used herein to mean one of the listed elements, a plurality of one of the listed elements, a plurality of individual listed elements, or a plurality of a multiple of individual listed elements.
[0020] Some aspects may be used in conjunction with various devices and systems, for example, a User Equipment (UE), a Mobile Device (MD), a Bluetooth (BT) device, a Bluetooth Low Energy (BLE) device, a Point of Sale (POS) device, a Point of Purchase (POP) device, a wireless station (STA), a Personal Computer (PC), a desktop computer, a mobile computer, a laptop computer, a notebook computer, a tablet computer, a server computer, a handheld computer, a handheld device, a wearable device, a sensor device, an Internet of Things (loT) device, a mobile or portable device, a consumer device, a non-mobile or non-portable device, a wireless communication station, a wireless communication device, and the like.
[0021] Some aspects may be used in conjunction with devices and / or networks operating in accordance with existing Bluetooth standards (“the Bluetooth standards”), e.g., including Bluetooth Core Specification V 5.3, July 13, 2021, and / or future versions and / or derivatives thereof, devices and / or networks operating in accordance with existing IEEE 802.11 standards (including IEEE 802.11-2020 (IEEE 802.11-2020, IEEE Standard for Information Technology — Telecommunications and Information Exchange between Systems Local and Metropolitan Area Networks — Specific Requirements; Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, December, 2020)) and / or future versions and / or derivatives thereof, devices and / or networks operating in accordance withexisting cellular specifications and / or protocols, units and / or devices which are part of the above networks, and the like.
[0022] Some aspects may be used in conjunction with one or more types of wireless communication signals and / or systems, for example, Radio Frequency (RF), Infra-Red (IR), Frequency-Division Multiplexing (FDM), Orthogonal FDM (OFDM), Orthogonal Frequency- Division Multiple Access (OFDMA), FDM Time-Division Multiplexing (TDM), Time- Division Multiple Access (TDMA), Multi-User MIMO (MU-MIMO), Spatial Division Multiple Access (SDMA), Extended TDMA (E-TDMA), General Packet Radio Service (GPRS), extended GPRS, Code-Division Multiple Access (CDMA), Wideband CDMA (WCDMA), CDMA 2000, single-carrier CDMA, multi-carrier CDMA, Multi-Carrier Modulation (MDM), Discrete Multi-Tone (DMT), BluetoothD, Global Positioning System (GPS), Wi-Fi, Wi-Max, ZigBee™, Ultra- Wideband (UWB), 4G, Fifth Generation (5G), or Sixth Generation (6G) mobile networks, 3GPP, Long Term Evolution (LTE), LTE advanced, Enhanced Data rates for GSM Evolution (EDGE), Near Field Communication (NFC), or the like. Other aspects may be used in various other devices, systems and / or networks.
[0023] The term “wireless device”, as used herein, includes, for example, a device capable of wireless communication, a communication device capable of wireless communication, a communication station capable of wireless communication, a portable or non-portable device capable of wireless communication, or the like. In some demonstrative aspects, a wireless device may be or may include a peripheral that may be integrated with a computer, or a peripheral that may be attached to a computer. In some demonstrative aspects, the term “wireless device” may optionally include a wireless service.
[0024] The term “communicating” as used herein with respect to a communication signal includes transmitting the communication signal and / or receiving the communication signal. For example, a communication unit, which is capable of communicating a communication signal, may include a transmitter to transmit the communication signal to at least one other communication unit, and / or a communication receiver to receive the communication signal from at least one other communication unit. The verb communicating may be used to refer to the action of transmitting or the action of receiving. In one example, the phrase “communicating a signal” may refer to the action of transmitting the signal by a first device, and may not necessarily include the action of receiving the signal by a second device. In another example, the phrase “communicating a signal” may refer to the action of receiving the signal by a first device, and may not necessarily include the action of transmitting the signal by a second device.The communication signal may be transmitted and / or received, for example, in the form of Radio Frequency (RF) communication signals, and / or any other type of signal.
[0025] The term “data” as used herein may be understood to include information in any suitable analog or digital form, e.g., provided as a file, a portion of a file, a set of files, a signal or stream, a portion of a signal or stream, a set of signals or streams, and the like. Further, the term “data” may also be used to mean a reference to information, e.g., in form of a pointer. The term “data”, however, is not limited to the aforementioned examples and may take various forms and / or may represent any information as understood in the art.
[0026] The terms “processor” or “controller” may be understood to include any kind of technological entity that allows handling of any suitable type of data and / or information. The data and / or information may be handled according to one or more specific functions executed by the processor or controller. Further, a processor or a controller may be understood as any kind of circuit, e.g., any kind of analog or digital circuit. A processor or a controller may thus be or include an analog circuit, digital circuit, mixed-signal circuit, logic circuit, processor, microprocessor, Central Processing Unit (CPU), Graphics Processing Unit (GPU), Digital Signal Processor (DSP), Field Programmable Gate Array (FPGA), integrated circuit, Application Specific Integrated Circuit (ASIC), and the like, or any combination thereof. Any other kind of implementation of the respective functions, which will be described below in further detail, may also be understood as a processor, controller, or logic circuit. It is understood that any two (or more) processors, controllers, or logic circuits detailed herein may be realized as a single entity with equivalent functionality or the like, and conversely that any single processor, controller, or logic circuit detailed herein may be realized as two (or more) separate entities with equivalent functionality or the like.
[0027] The term “memory” is understood as a computer-readable medium (e.g., a non- transitory computer-readable medium) in which data or information can be stored for retrieval. References to “memory” may thus be understood as referring to volatile or non-volatile memory, including random access memory (RAM), read-only memory (ROM), flash memory, solid-state storage, hard disk drive, optical drive, among others, or any combination thereof. Registers, shift registers, processor registers, data buffers, among others, are also embraced herein by the term memory. The term “software” may be used to refer to any type of executable instruction and / or logic, including firmware.
[0028] As used herein, the term "circuitry" may refer to, be part of, or include, an Application Specific Integrated Circuit (ASIC), an integrated circuit, an electronic circuit, a processor (shared, dedicated, or group), and / or memory (shared, dedicated, or group), that execute one ormore software or firmware programs, a combinational logic circuit, and / or other suitable hardware components that provide the described functionality. In some aspects, some functions associated with the circuitry may be implemented by one or more software or firmware modules. In some aspects, circuitry may include logic, at least partially operable in hardware.
[0029] The term “logic” may refer, for example, to computing logic embedded in circuitry of a computing apparatus and / or computing logic stored in a memory of a computing apparatus. For example, the logic may be accessible by a processor of the computing apparatus to execute the computing logic to perform computing functions and / or operations. In one example, logic may be embedded in various types of memory and / or firmware, e.g., silicon blocks of various chips and / or processors. Logic may be included in, and / or implemented as part of, various circuitry, e.g., radio circuitry, receiver circuitry, control circuitry, transmitter circuitry, transceiver circuitry, processor circuitry, and / or the like. In one example, logic may be embedded in volatile memory and / or non-volatile memory, including random access memory, read only memory, programmable memory, magnetic memory, flash memory, persistent memory, and / or the like. Logic may be executed by one or more processors using memory, e.g., registers, buffers, stacks, and the like, coupled to the one or more processors, e.g., as necessary to execute the logic.
[0030] Some demonstrative aspects may be used in conjunction with BT communications over a BT frequency band, e.g., in frequencies between 2.4-2.483GHz.
[0031] Some demonstrative aspects may be used in conjunction with a wireless communication network communicating over a frequency band of 2.4GHz, 5GHz, or 6GHz. However, other aspects may be implemented utilizing any other additional and / or alternative wireless communication technologies and / or over any other additional and / or additional wireless communication frequency bands, for example, a 2.4GHz band, a 5GHz band, a 6GHz band, an Extremely High Frequency (EHF) band (the millimeter wave (mmWave) frequency band), e.g., a frequency band within the frequency band of between 20GHz and 300GHz, a WLAN frequency band, a WPAN frequency band, and the like.
[0032] The term “antenna”, as used herein, may include any suitable configuration, structure and / or arrangement of one or more antenna elements, components, units, assemblies and / or arrays. In some aspects, the antenna may implement transmit and receive functionalities using separate transmit and receive antenna elements. In some aspects, the antenna may implement transmit and receive functionalities using common and / or integrated transmit / receive elements. The antenna may include, for example, a phased array antenna, a single element antenna, a set of switched beam antennas, and / or the like.
[0033] Some aspects, for example, may capture the form of an entirely hardware aspect, an entirely software aspect, or an aspect including both hardware and software elements. Some aspects may be implemented in software, which includes but is not limited to firmware, resident software, microcode, or the like.
[0034] Furthermore, some aspects may capture the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by, or in connection with, a computer or any instruction execution system. For example, a computer-usable or computer-readable medium may be or may include any apparatus that can contain, store, communicate, propagate, and / or transport the program for use by or in connection with the instruction execution system, apparatus, and / or device.
[0035] In some demonstrative aspects, the medium may be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium.
[0036] In some demonstrative aspects, a data processing system suitable for storing and / or executing program code may include at least one processor coupled, directly or indirectly, to memory elements, for example, through a system bus. The memory elements may include, for example, local memory employed during actual execution of the program code, bulk storage, and cache memories which may provide temporary storage of at least some program code in order to reduce the number of times code must be retrieved from bulk storage during execution.
[0037] In some demonstrative aspects, input / output or I / O devices (including but not limited to keyboards, displays, pointing devices, etc.) may be coupled to the system either directly or through intervening I / O controllers. In some demonstrative aspects, network adapters may be coupled to the system to enable the data processing system to become coupled to other data processing systems or remote printers or storage devices, for example, through intervening private or public networks. In some demonstrative aspects, modems, cable modems and Ethernet cards are demonstrative examples of types of network adapters. Other suitable components may be used.
[0038] Some aspects may include one or more wired or wireless links, may utilize one or more components of wireless communication, may utilize one or more methods or protocols of wireless communication, or the like. Some aspects may utilize wired communication and / or wireless communication.
[0039] Reference is made to Fig. 1, which schematically illustrates a system 100, in accordance with some demonstrative aspects.
[0040] As shown in Fig. 1, in some demonstrative aspects, system 100 may include one or more wireless communication devices. For example, system 100 may include a wireless communication device 102, a wireless communication device 140, and / or one more other devices.
[0041] In some demonstrative aspects, system 100 may include a server 199, which may be configured to perform one or more operations and / or functionalities, for example, to provide one or more services to wireless communication devices 102 and / or 140, e.g., as described below.
[0042] In some demonstrative aspects, server 199 may be implemented as, and / or may be configured to perform one or more operations and / or functionalities of, a remote server, a webbased server, a cloud server, a cloud service, and / or any other server. In other aspects, server 199 may be implemented as, and / or may be configured to perform one or more operations and / or functionalities of, any other type of server and / or service provider.
[0043] In some demonstrative aspects, device 102 and / or device 140 may include a mobile device or a non-mobile, e.g., a static, device.
[0044] For example, device 102 and / or device 140 may include, for example, a UE, an MD, a STA, a Smartphone, a PC, a desktop computer, a mobile computer, a laptop computer, a notebook computer, a tablet computer, a handheld computer, an Internet of Things (loT) device, a POS device, a POP device, a BT dedicated device, e.g., a BT dongle, which may be connected to a POS / POP device, a sensor device, a handheld device, a wearable device, a consumer device, a non-mobile or non-portable device, a mobile phone, a cellular telephone, or the like.
[0045] In some demonstrative aspects, device 102 and / or device 140 may include, operate as, and / or perform the functionality of one or more BT devices.
[0046] In some demonstrative aspects, device 102 and / or device 140 may include a BT mobile device. In other aspects, device 102 and / or device 140 may include a non-mobile BT device.
[0047] In one example, device 102 and / or device 140 may include BT Low Energy (LE) (BLE) compatible devices. In other aspects, device 102 and / or device 140 may include or implement any other additional or alternative BT communication functionality, e.g., according to any other additional or alternative BT protocol.
[0048] In some demonstrative aspects, device 102, and / or device 140 may include, operate as, perform the role of, and / or perform one or more functionalities of, one or more STAs. Forexample, device 102 may include at least one STA, and / or device 140 may include at least one STA.
[0049] In other aspects, devices 102, and / or 140 may include, operate as, perform the role of, and / or perform one or more functionalities of, any other wireless device and / or station, e.g., a WLAN STA, a Wi- Fi STA, and the like.
[0050] In one example, a station (STA) may include a logical entity that is a singly addressable instance of a medium access control (MAC) and physical layer (PHY) interface to the wireless medium (WM). The STA may perform any other additional or alternative functionality.
[0051] In other aspects, devices 102, and / or 140 may include, operate as, and / or perform the functionality of any other type of STA and / or device.
[0052] In some demonstrative aspects, device 102 may include, for example, one or more of a processor 191, an input unit 192, an output unit 193, a memory unit 194, and / or a storage unit 195; and / or device 140 may include, for example, one or more of a processor 181, an input unit 182, an output unit 183, a memory unit 184, and / or a storage unit 185. Devices 102 and / or 140 may optionally include other suitable hardware components and / or software components. In some demonstrative aspects, some or all of the components of one or more of devices 102 and / or 140 may be enclosed in a common housing or packaging, and may be interconnected or operably associated using one or more wired or wireless links. In other aspects, components of one or more of devices 102 and / or 140 may be distributed among multiple or separate devices.
[0053] In some demonstrative aspects, server 199 may include, for example, one or more of a processor 171, a memory unit 175, and / or a storage unit 173. Server 199 may optionally include other suitable hardware components and / or software components. In some demonstrative aspects, some or all of the components of server 199 may be enclosed in a common housing or packaging, and may be interconnected or operably associated using one or more wired or wireless links. In other aspects, components of server 199 may be distributed among multiple or separate devices.
[0054] In some demonstrative aspects, processor 191, processor 181, and / or processor 171 may include, for example, a Central Processing Unit (CPU), a Digital Signal Processor (DSP), one or more processor cores, a single-core processor, a dual-core processor, a multiple-core processor, a microprocessor, a host processor, a controller, a plurality of processors or controllers, a chip, a microchip, one or more circuits, circuitry, a logic unit, an Integrated Circuit (IC), an Application-Specific IC (ASIC), or any other suitable multi-purpose or specificprocessor or controller. Processor 191 may execute instructions, for example, of an Operating System (OS) of device 102 and / or of one or more suitable applications. Processor 181 may execute instructions, for example, of an OS of device 140 and / or of one or more suitable applications. Processor 171 executes instructions, for example, of an OS of server 199 and / or of one or more suitable applications.
[0055] In some demonstrative aspects, input unit 192 and / or input unit 182 may include, for example, a keyboard, a keypad, a mouse, a touch-screen, a touch-pad, a track-ball, a stylus, a microphone, or other suitable pointing device or input device. Output unit 193 and / or output unit 183 may include, for example, a monitor, a screen, a touch-screen, a flat panel display, a Light Emitting Diode (LED) display unit, a Liquid Crystal Display (LCD) display unit, a plasma display unit, one or more audio speakers or earphones, or other suitable output devices.
[0056] In some demonstrative aspects, memory unit 194, memory unit 184, and / or memory unit 175 includes, for example, a Random Access Memory (RAM), a Read Only Memory (ROM), a Dynamic RAM (DRAM), a Synchronous DRAM (SD-RAM), a flash memory, a volatile memory, a non-volatile memory, a cache memory, a buffer, a short term memory unit, a long term memory unit, or other suitable memory units. Storage unit 195 and / or storage unit 185 may include, for example, a hard disk drive, a disk drive, a solid-state drive (SSD), and / or other suitable removable or non-removable storage units. Memory unit 194 and / or storage unit 195, for example, may store data processed by device 102. Memory unit 184 and / or storage unit 185, for example, may store data processed by device 140. Memory unit 175 and / or storage unit 173, for example, may store data processed by server 199.
[0057] In some demonstrative aspects, wireless communication device 102, wireless communication device 140, and / or server 199 may be capable of communicating content, data, information and / or signals via a wireless medium (WM) 103. In some demonstrative aspects, wireless medium 103 may include, for example, a BT channel, a radio channel, a cellular channel, an RF channel, a Wi-Fi channel, a 5G channel, an IR channel, a Global Navigation Satellite System (GNSS) Channel, and the like.
[0058] In some demonstrative aspects, device 102 and / or device 140 may communicate with server 199, for example, via WM 103.
[0059] In some demonstrative aspects, WM 103 may include one or more wireless communication frequency bands and / or channels. For example, WM 103 may include one or more channels in a sub-lOGHz wireless communication frequency band, for example, one or more channels in a 2.4GHz wireless communication frequency band, one or more channels in a 5GHz wireless communication frequency band, and / or one or more channels in a 6GHzwireless communication frequency band. For example, WM 103 may additionally or alternatively include one or more channels in a mmWave wireless communication frequency band. In other aspects, WM 103 may include any other type of channel over any other frequency band.
[0060] In some demonstrative aspects, device 102 and / or device 140 may include one or more radios including circuitry and / or logic to perform wireless communication between devices 102, 140, and / or one or more other wireless communication devices. For example, device 102 may include at least one radio 114, and / or device 140 may include at least one radio 144.
[0061] In some demonstrative aspects, radio 114 and / or radio 144 may include a BT radio including circuitry and / or logic to perform wireless communication between devices BT devices 102 and 140 and / or one or more other BT devices.
[0062] In some demonstrative aspects, radio 114 and / or radio 144 may include one or more other radios, e.g., a WiFi radio, an OFDM radio, a cellular radio, and / or the like.
[0063] In some demonstrative aspects, radio 114 and / or radio 144 may include one or more wireless receivers (Rx) including circuitry and / or logic to receive wireless communication signals, RF signals, frames, blocks, transmission streams, packets, messages, data items, and / or data. For example, radio 114 may include at least one receiver 116, and / or radio 144 may include at least one receiver 146.
[0064] In some demonstrative aspects, radio 114 and / or radio 144 may include one or more wireless transmitters (Tx) including circuitry and / or logic to transmit wireless communication signals, RF signals, frames, blocks, transmission streams, packets, messages, data items, and / or data. For example, radio 114 may include at least one transmitter 118, and / or radio 144 may include at least one transmitter 148.
[0065] In some demonstrative aspects, radio 114 and / or radio 144, transmitters 118 and / or 148, and / or receivers 116 and / or 146 may include circuitry; logic; Radio Frequency (RF) elements, circuitry and / or logic; baseband elements, circuitry and / or logic; modulation elements, circuitry and / or logic; demodulation elements, circuitry and / or logic; amplifiers; analog to digital and / or digital to analog converters; filters; and / or the like. For example, radio 114 and / or radio 144 may include or may be implemented as part of a wireless Network Interface Card (NIC), and the like.
[0066] In some demonstrative aspects, radios 114 and / or 144 may be configured to communicate over a 2.4GHz band, a 5GHz band, a 6GHz band, a mmWave band, and / or any other band, for example, a 5G band, an S 1G band, and / or any other band.
[0067] In some demonstrative aspects, radios 114 and / or 144 may include, or may be associated with one or more antennas.
[0068] In some demonstrative aspects, device 102 may include one or more antennas 107, and / or device 140 may include on or more antennas 147.
[0069] Antennas 107 and / or 147 may include any type of antennas suitable for transmitting and / or receiving wireless communication signals, blocks, frames, transmission streams, packets, messages and / or data. For example, antennas 107 and / or 147 may include any suitable configuration, structure and / or arrangement of one or more antenna elements, components, units, assemblies and / or arrays. Antennas 107 and / or 147 may include, for example, antennas suitable for directional communication, e.g., using beamforming techniques. For example, antennas 107 and / or 147 may include a single antenna, a plurality of antennas, a phased array antenna, a multiple element antenna, a set of switched beam antennas, and / or the like. In some aspects, antennas 107 and / or 147 may implement transmit and receive functionalities using separate transmit and receive antenna elements. In some aspects, antennas 107 and / or 147 may implement transmit and receive functionalities using common and / or integrated transmit / receive elements.
[0070] In some demonstrative aspects, device 102, device 140, and / or server 199 may be configured to implement one or more operations of and / or functionalities of a proximity-based communication mechanism, which may be configured to provide a technical solution to support communications, operations, and / or functionalities to be performed based on a proximity between devices, e.g., devices 102 and 140, e.g., as described below.
[0071] In some demonstrative aspects, the proximity -based communication mechanism may be configured to provide a technical solution to support detection and / or identification of a proximity between two devices, e.g., devices 102 and 140, e.g., as described below.
[0072] In some demonstrative aspects, the proximity-based communication mechanism may be configured to provide a technical solution to support detection and / or identification of a proximity event representing a distance of less than 20 centimeters (cm) between two devices, e.g., devices 102 and 140, e.g., as described below.
[0073] In some demonstrative aspects, the proximity-based communication mechanism may be configured to provide a technical solution to support detection and / or identification ofa proximity event representing a distance of less than 10 centimeters (cm) between two devices, e.g., devices 102 and 140, e.g., as described below.
[0074] In some demonstrative aspects, the proximity-based communication mechanism may be configured to provide a technical solution to support detection and / or identification of a proximity event representing a distance of less than 5 centimeters (cm) between two devices, e.g., devices 102 and 140, e.g., as described below.
[0075] In some demonstrative aspects, the proximity -based communication mechanism may be configured to provide a technical solution to support detection and / or identification of a proximity event representing a distance of less than 1cm between two devices, e.g., devices 102 and 140, e.g., as described below.
[0076] In some demonstrative aspects, the proximity -based communication mechanism may be configured to provide a technical solution to support detection and / or identification of a contact (“touch” or “tap”) event representing a distance of less than 1cm, for example, a distance of substantially 0cm, between two devices, e.g., devices 102 and 140, e.g., as described below.
[0077] In some demonstrative aspects, the proximity-based communication mechanism may be configured to provide a technical solution to support establishment of a wireless communication connection between devices 102 and 140, for example, based on a detected proximity between devices 102 and 140, e.g., as described below.
[0078] In some demonstrative aspects, the proximity -based communication mechanism may be configured to provide a technical solution to support an exchange of one or more wireless communication messages between devices 102 and 140, for example, based on a detected proximity between devices 102 and 140, e.g., as described below.
[0079] In some demonstrative aspects, the proximity-based communication mechanism may be configured to provide a technical solution to support a bi-directional exchange of wireless communication messages between devices 102 and 140, for example, based on a detected proximity between devices 102 and 140, e.g., as described below.
[0080] For example, the bi-directional exchange of wireless communication messages between devices 102 and 140 may include one or more messages transmitted from device 102 to device 140, and one or more messages transmitted from device 140 to device 102 and / or read by device 102 from device 140, e.g., as described below.
[0081] In some demonstrative aspects, the proximity -based communication mechanism may be configured to provide a technical solution to support execution of a transaction ofmonetary value (“monetary transaction”) based on a detected proximity between devices 102 and 140, e.g., as described below.
[0082] In some demonstrative aspects, the proximity-based communication mechanism may be configured to provide a technical solution to support a transaction of monetary value between a user of device 102 and a user of device 140, for example, according to a “pay by touch” procedure, a “buy by touch” procedure, a “touch & pay” procedure, a “touch and buy” procedure, a “tap & buy” procedure, a “tap & pay” procedure, and / or any other touch-based, contact-based, and / or tap-based procedure.
[0083] For example, the proximity-based communication mechanism may be configured to provide a technical solution to support execution of a transaction of monetary value, for example, based on a tap event, which may be detected, for example, when the user of device 102 taps device 102 on device 140 and / or performs any other suitable predefined proximitybased movement of device 102 relative to device 140, e.g., as described below.
[0084] In some demonstrative aspects, the transaction of monetary value may include, for example, communicating between devices 102 and 140 any suitable billing and / or credit data sufficient for performing the transaction, e.g., as described below.
[0085] In some demonstrative aspects, the monetary transaction may include, for example, transfer of funds from a user of first device (“payer device” or “sender device”) to a user of a second device (“receiver device”), e.g., as described below.
[0086] In some demonstrative aspects, device 102 and / or device 140 may be configured to perform a role of, one or more operations of, and / or one or more functionalities of, the payer device, e.g., as described below.
[0087] In some demonstrative aspects, device 102 and / or device 140 may be configured to perform a role of, one or more operations of, and / or one or more functionalities of, the receiver device, e.g., as described below.
[0088] In some demonstrative aspects, the monetary transaction may include, for example, a personal transaction, e.g., a Person to Person (P2P) transaction, for transfer of funds from a first person to a second person, e.g., as described below.
[0089] In one example, the personal transaction may include a transfer of funds from a user of a first personal device, e.g., a personal mobile device 102, to a user of a second personal device, e.g., a personal mobile device 140.
[0090] In some demonstrative aspects, the monetary transaction may include, for example, a business transaction, e.g., a POS or POP transaction, for transfer of funds from a person to a business, e.g., as described below.
[0091] In one example, the personal transaction may include a transfer of funds from a user of a personal device, e.g., a personal mobile device 102, to a POS or POP device of a business, e.g., a POS or POP device 140.
[0092] In some demonstrative aspects, the monetary transaction may include, for example, an on-line transaction, which may be completed on-line, e.g., substantially in real time, e.g., as described below.
[0093] For example, the on-line transaction may include transfer of transaction information from device 102 and / or device 140 to server 199, e.g., substantially in real time. For example, the on-line transaction may include authorization and / or confirmation of the on-line transaction by server 199, and sending of a transaction confirmation from server 199 to device 102 and / or device 140, e.g., substantially in real time.
[0094] In some demonstrative aspects, the monetary transaction may include, for example, an on-line transaction, which may be completed and / or validated by server 199 on-line, e.g., in real time, e.g., as described below.
[0095] In other aspects, the monetary transaction may include, for example, an off-line transaction, which may be completed off-line, e.g., at a later time, e.g., as described below.
[0096] In some demonstrative aspects, the monetary transaction may include, for example, an off-line transaction, which may be completed and / or validated by server 199 off-line, e.g., at a later time, e.g., as described below.
[0097] For example, the off-line transaction may include a transaction, which may be performed based on communications performed between a payer device, e.g., device 102, and a payment receiver device, e.g., device 140, for example, while the payer device and / or the payment-receiver device do not have an on-line connection with the server 199.
[0098] For example, the off-line transaction may include an exchange of transaction information, which may be performed by the device 102 and / or device 140, e.g., substantially in real time. For example, transfer of transaction information from device 102 and / or device 140 for validation by server 199 may be performed, e.g., at a later, e.g., delayed, time. For example, the off-line transaction may be completed by device 102 and / or device 140 offline, e.g., without an online connection with server 199, while validation and / or confirmation of the off-line transaction may be performed by server 199, and a final transactionvalidation / confirmation may be sent from server 199 to device 102 and / or device 140, e.g., at a later, e.g., delayed, time.
[0099] In some demonstrative aspects, the monetary transaction may include, for example, a substantially direct transaction, which may be performed directly based on communications performed between a first device, for example, a payer device, e.g., device 102, and a second device, for example, a payment receiver device, e.g., device 140, for example, and which may be completed and / or validated by the first and second devices, for example, even without substantially any action and / or intervention of the server 199.[000100] In some demonstrative aspects, device 102 may include a user-end application (also referred to as “user-end controller”) 160, which may be configured to trigger, cause, instruct and / or control device 102 to perform, one or more communications, to generate and / or communicate one or more messages and / or transmissions, and / or to perform one or more functionalities, operations and / or procedures according to the proximity -based communication mechanism, e.g., as described below.[000101] In some demonstrative aspects, device 140 may include a user-end application (userend controller) 161, which may be configured to trigger, cause, instruct and / or control device 140 to perform, one or more communications, to generate and / or communicate one or more messages and / or transmissions, and / or to perform one or more functionalities, operations and / or procedures according to the proximity-based communication mechanism, e.g., as described below.[000102] In some demonstrative aspects, server 199 may include a server-end application (also referred to as “server-end controller”) 162, which may be configured to trigger, cause, instruct and / or control server 199 to perform, one or more communications, to generate and / or communicate one or more messages and / or transmissions, and / or to perform one or more functionalities, operations and / or procedures according to the proximity -based communication mechanism, e.g., as described below.[000103] In some demonstrative aspects, user-end application 160, user-end application 161, and / or server-end application 162 may be implemented by, as part of, and / or in the form of, at least one service, module, and / or controller, e.g., as described below.[000104] In some demonstrative aspects, user-end controller 160, user-end controller 161, and / or server-end controller 162 may include, or may be implemented as, software, a software module, an application, a program, a subroutine, instructions, an instruction set, computing code, words, values, symbols, and / or the like.[000105] In some demonstrative aspects, user-end application 160 may include a local application to be executed by device 102, and / or user-end application 161 may include a local application to be executed by device 140, e.g., as described below.[000106] In some demonstrative aspects, one or more, e.g., some or all, operations and / or functionalities, of user-end application 160 may be implemented by a suitable application, e.g., a mobile application or the like, which may be downloaded by device 102.[000107] In some demonstrative aspects, one or more, e.g., some or all, operations and / or functionalities, of user-end application 161 may be implemented by a suitable application, e.g., a mobile application or the like, which may be downloaded by device 140.[000108] In some demonstrative aspects, memory unit 194 and / or storage unit 195 may store instructions resulting in user-end application 160, and / or processor 191 may be configured to execute the instructions resulting in user-end application 160 and / or to perform one or more calculations and / or processes of user-end application 160, e.g., as described below.[000109] In some demonstrative aspects, memory unit 184 and / or storage unit 185 may store instructions resulting in user-end application 161, and / or processor 181 may be configured to execute the instructions resulting in user-end application 161 and / or to perform one or more calculations and / or processes of user-end application 161, e.g., as described below.[000110] In other aspects, user-end application 160 and / or user-end application 161 may include a remote application to be executed by a suitable computing system, e.g., server 199.[000111] In some demonstrative aspects, user-end application 160 may include a combination of a remote application and a local application.[000112] In one example, user-end application 160 may be downloaded and / or received by the user of device 102 from another computing system, e.g., server 199, such that user-end application 160 may be executed locally by users of device 102. For example, some or all of the instructions of user-end application 160 may be received and stored, e.g., temporarily, in a memory 194 or any suitable short-term memory or buffer of device 102, e.g., prior to being executed by processor 191 of device 102.[000113] In another example, user-end application 160 may include a front-end to be executed locally by device 102, and a backend to be executed by server 199. For example, the front end of user-end application 160 may include and / or may be implemented as a local application, a web application, a web site, a web client, e.g., a Hypertext Markup Language (HTML) web application, or the like, which may be executed locally at device 102, e.g., by processor 191.[000114] For example, one or more first operations of user-end application 160 may be performed locally, for example, by device 102, and / or one or more second operations of userend application 160 may be performed remotely, for example, by server 199, e.g., as described below.[000115] In some demonstrative aspects, user-end application 161 may include a combination of a remote application and a local application.[000116] In one example, user-end application 161 may be downloaded and / or received by the user of device 140 from another computing system, e.g., server 199, such that user-end application 161 may be executed locally by users of device 140. For example, some or all of the instructions of user-end application 161 may be received and stored, e.g., temporarily, in a memory 184 or any suitable short-term memory or buffer of device 140, e.g., prior to being executed by processor 191 of device 140.[000117] In another example, user-end application 161 may include a front-end to be executed locally by device 140, and a backend to be executed by server 199. For example, the front end of user-end application 161 may include and / or may be implemented as a local application, a web application, a web site, a web client, e.g., an HTML web application, or the like, which may be executed locally at device 102, e.g., by processor 191.[000118] For example, one or more first operations of user-end application 161 may be performed locally, for example, by device 140, and / or one or more second operations of userend application 161 may be performed remotely, for example, by server 199, e.g., as described below.[000119] In other aspects, user-end application 160 and / or user-end application 161 may include and / or may be implemented by any other suitable computing arrangement and / or scheme.[000120] In some demonstrative aspects, system 100 may include an interface 110 to interface between users of devices 102 and / or 140 and one or more elements of system 100, e.g., controller / application 160, controller / application 161 and / or controller / application 162.[000121] In some demonstrative aspects, interface 110 may be implemented using any suitable hardware components and / or software components, for example, processors, controllers, memory units, storage units, input units, output units, communication units, operating systems, and / or applications.[000122] In some aspects, interface 110 may be implemented as part of any suitable module, system, device, or component of system 100.[000123] In other aspects, interface 110 may be implemented as a separate element of system 100.[000124] In some demonstrative aspects, interface 110 may be implemented as part of devices 102 and / or 140. For example, interface 110 may be associated with and / or included as part of devices 102 and / or 140.[000125] In one example, interface 110 may be implemented, for example, as middleware, and / or as part of any suitable application of devices 102 and / or 140. For example, interface 110 may be implemented as part of controller / application 160 and / or controller / application 161, and / or as part of an OS of devices 102 and / or 140.[000126] In some demonstrative aspects, interface 110 may be implemented as part of server 199. For example, interface 110 may be associated with and / or included as part of server 199.[000127] In one example, interface 110 may include, or may be part of a mobile application, a Web-based application, a web-site, a web-page, a plug-in, an ActiveX control, a rich content component (e.g., a Flash or Shockwave component), or the like.[000128] In some aspects, interface 110 may include any suitable Graphic-User- Interface (GUI) and / or any other suitable interface.[000129] In some demonstrative aspects, user-end controller 160 may be configured to trigger, cause, instruct and / or control device 102 to identify a proximity event to identify a second wireless communication device, e.g., device 140, in proximity to device 102, e.g., as described below.[000130] In some demonstrative aspects, user-end controller 160 may be configured to trigger, cause, instruct and / or control device 102 to establish, e.g., based on the identified proximity event, a wireless communication link with the second wireless communication device, e.g., device 140, for example, to communicate data between device 102 and the second first wireless communication device, e.g., as described below.[000131] In some demonstrative aspects, user-end controller 161 may be configured to trigger, cause, instruct and / or control device 140 to identify a proximity event to identify a second wireless communication device, e.g., device 102, in proximity to device 140, e.g., as described below.[000132] In some demonstrative aspects, user-end controller 161 may be configured to trigger, cause, instruct and / or control device 140 to establish, e.g., based on the identified proximity event, a wireless communication link with the second wireless communication device, e.g.,device 102, for example, to communicate data between device 140 and the second first wireless communication device, e.g., as described below.[000133] In some demonstrative aspects, user-end controller 160 and / or user-end controller 161 may be configured to implement one or more operations of and / or functionalities of a proximity-based communication mechanism, which may be based on a proximity detection technique to detect proximity between two devices, for example, between device 102 and device 140, e.g., as described below.[000134] In some demonstrative aspects, user-end application 160 and / or user-end application 161 may be configured to implement one or more operations of and / or functionalities of a wireless- signal-measurement proximity detection technique, which may be based on measurements of wireless communication signals communicated by devices 102 and / or 140, e.g., as described below.[000135] In some demonstrative aspects, the wireless-signal-measurement proximity detection technique may be based on a signal strength of received wireless communication signals, e.g., as described below.[000136] In some demonstrative aspects, the wireless-signal-measurement proximity detection technique may be based on a Received Signal Strength Indicator (RSSI) of received wireless communication signals, e.g., as described below.[000137] For example, a first device may be configured to implement the wireless- signalmeasurement proximity detection technique to detect proximity of the first device to a second device, for example, based on a measured RSSI corresponding to wireless communication signals received from the second device, e.g., as described below.[000138] In one example, user-end application 160 may be configured to detect proximity of the device 102 to a second device, e.g., device 140, for example, based on a measured RSSI corresponding to wireless communication signals received from the second device, e.g., as described below.[000139] In one example, user-end application 161 may be configured to detect proximity of the device 140 to a second device, e.g., device 102, for example, based on a measured RSSI corresponding to wireless communication signals received from the second device, e.g., as described below.[000140] In one example, user-end application 160 may be configured to detect proximity of the device 102 to a second device, e.g., device 140, for example, based on a measured RSSI corresponding to BT signals received from the second device, e.g., as described below.[000141] In one example, user-end application 161 may be configured to detect proximity of the device 140 to a second device, e.g., device 102, for example, based on a measured RSSI corresponding to BT signals received from the second device, e.g., as described below.[000142] In other aspects, the wireless-signal-measurement proximity detection technique may be based on any other additional or alternative measurements with respect to any other additional or alternative property of BT signals and / or any other suitable type of wireless communication signals.[000143] In some demonstrative aspects, user-end application 160 and / or user-end application 161 may be configured to implement one or more operations of and / or functionalities of a very- close-proximity detection technique, for example, a touch or near-touch detection technique, for example, in addition to, or instead of, the wireless- signal-measurement proximity detection technique, e.g., as described below.[000144] In some demonstrative aspects, the very-close-proximity detection technique, e.g., the touch or near-touch detection technique, may be implemented in addition to the wireless- signal-measurement proximity detection technique, for example, to confirm a proximity detection, e.g., as described below.[000145] In some demonstrative aspects, the wireless-signal-measurement proximity detection technique may be implemented, for example, to determine one or more potentially detected devices, for example, based on the measured RSSI corresponding to wireless communication signals received from the one or more potentially detected devices, e.g., as described below.[000146] In some demonstrative aspects, the very-close-proximity detection technique, e.g., the touch or near-touch detection technique, may be implemented, for example, to confirm a detected device of the one or more potentially detected devices, for example, based on a very- close-proximity detection, e.g., a touch or near-touch detection, corresponding to the detected device, e.g., as described below.[000147] In some demonstrative aspects, the very-close-proximity detection technique, e.g., the touch or near-touch detection technique, may include, or may be based on, a magnetic- measurement proximity detection technique, e.g., as described below.[000148] In other aspects, the very-close-proximity detection technique, e.g., the touch or near-touch detection technique, may include, or may be based on, any other additional or alternative touch detection mechanism.[000149] In some demonstrative aspects, user-end application 160 and / or user-end application 161 may be configured to implement one or more operations of and / or functionalities of a magnetic-measurement proximity detection technique, which may be based on measurements of a magnetic field, e.g., as described below.[000150] In other aspects, user-end application 160 and / or user-end application 161 may be configured to implement any other additional or alternative proximity detection technique.[000151] In some demonstrative aspects, user-end controller 160 and / or user-end controller 161 may be configured to implement one or more operations of and / or functionalities of a proximity-based communication mechanism, which may be based on a mutual proximity detection technique to mutually detect proximity between two devices, for example, between device 102 and device 140, e.g., as described below.[000152] In some demonstrative aspects, the proximity detection technique may be configured to detect proximity between first and second devices based on both a first proximity based detection at the first device and a second proximity detection at the second device, e.g., as described below.[000153] For example, user-end controller 160 may be configured to detect a proximity event representing proximity of device 102 to device 140, for example, based on both a first proximity based detection of device 140 at device 102, and a second proximity detection of device 102 at device 140, e.g., as described below.[000154] In some demonstrative aspects, the proximity detection technique may be configured to detect proximity between first and second devices, for example, based on an exchange of proximity detection information between the first device and the second device.[000155] In some demonstrative aspects, the exchange of proximity detection information between the first device and the second device may include, for example, an exchange of one or more detection lists between the first device and the second device, e.g., as described below. [000156] For example, user-end controller 161 may be configured to cause device 140 to transmit to device 102 a detection list including a list of potential devices, which are detected by device 140 as potential devices in proximity to device 102.[000157] For example, user-end controller 160 may be configured to cause device 102 to transmit to device 140 a detection list including a list of potential devices, which are detected by device 102 as potential devices in proximity to device 140.[000158] For example, user-end controller 160 may be configured to detect a proximity event representing proximity of device 102 to device 140, for example, based on both the firstproximity based detection of device 140 at device 102, and the detection list from device 140, e.g., as described below.[000159] For example, user-end controller 160 may be configured to detect a proximity event representing proximity of device 102 to device 140, for example, based on a determination that the detection list generated at device 102 includes a detection of device 140 as a potential device in proximity to device 102, and based on a determination that the detection list received from device 140 includes a detection of device 102 as a potential device in proximity to device 140, e.g., as described below.[000160] For example, user-end controller 160 may be configured to confirm the proximity event representing proximity of device 102 to device 140, for example, based on the very-close- proximity detection technique, e.g., the touch or near-touch detection technique, e.g., as described below.[000161] For example, user-end controller 160 may be configured to confirm the proximity event representing proximity of device 102 to device 140, for example, based on the magnetic- measurement proximity detection technique, e.g., as described below.[000162] In one example, user-end controller 160 may be configured to confirm the proximity event representing proximity of device 102 to device 140, for example, based on magnetic- measurement information of magnetic measurements performed at device 102, and magnetic- measurement information of magnetic measurements performed at device 140, e.g., as described below.[000163] For example, user-end controller 161 may be configured to detect a proximity event representing proximity of device 140 to device 102, for example, based on both the first proximity based detection of device 102 at device 140, and the detection list from device 102, e.g., as described below.[000164] For example, user-end controller 161 may be configured to detect a proximity event representing proximity of device 140 to device 102, for example, based on a determination that the detection list generated at device 140 includes a detection of device 102 as a potential device in proximity to device 140, and based on a determination that the detection list received from device 102 includes a detection of device 140 as a potential device in proximity to device 102, e.g., as described below.[000165] For example, user-end controller 161 may be configured to confirm the proximity event representing proximity of device 140 to device 102, for example, based on the very-close-proximity detection technique, e.g., the touch or near-touch detection technique, e.g., as described below.[000166] For example, user-end controller 161 may be configured to confirm the proximity event representing proximity of device 140 to device 102, for example, based on the magnetic- measurement proximity detection technique, e.g., as described below.[000167] In one example, user-end controller 161 may be configured to confirm the proximity event representing proximity of device 140 to device 102, for example, based on magnetic- measurement information of magnetic measurements performed at device 140, and magnetic- measurement information of magnetic measurements performed at device 102, e.g., as described below.[000168] In some demonstrative aspects, user-end controller 160 may be configured to trigger, cause, instruct and / or control device 102 to identify a proximity event to identify that a second wireless communication device, e.g., device 140, in proximity to device 102, e.g., as described below.[000169] In some demonstrative aspects, user-end controller 160, user-end controller 161, and / or server-end controller 162 may be configured to perform one or more operations of and / or functionalities of a proximity-based transaction mechanism (also referred to as “pay by touch procedure”), e.g., as described below.[000170] In some demonstrative aspects, the pay by touch procedure may be configured to support execution of a payment transaction between two devices, e.g., devices 102 and 140, for example, based on BT communication, e.g., BLE communication, between the two devices, e.g., as described below.[000171] In other aspects, the pay by touch procedure may be configured to support execution of a payment transaction between two devices, e.g., devices 102 and 140, based on WiFi communication and / or any other wireless communication mechanism, technique, and / or protocol.[000172] In some demonstrative aspects, the pay by touch procedure may include requesting the users of the two devices, e.g., the user of device 102 and / or the user of device 140, to ensure that the two devices are in close proximity, e.g., in contact, during a designated time period (also referred to as “proximity detection period”) for initiating a payment transaction session between the two devices.[000173] For example, the interface 110 may provide a request and / or instruction to the user of device 102 and / or to the user of device 140 to place devices 102 and 140 in close proximity to device 140, e.g., to tap device 102 on device 140.[000174] In some demonstrative aspects, the proximity detection period of the transaction session may be initiated by user-end controller 160 and / or user-end controller 161, for example, based on a determination that a payment transaction is to be executed between devices 102 and 140.[000175] In some demonstrative aspects, the two devices to participate in the payment transaction, e.g., devices 102 and 140, may be placed in close proximity, e.g., in contact, with one another at some time instance (“touch time”) during the proximity detection period.[000176] In some demonstrative aspects, it may be assumed that at the touch time, or at a time substantially close to the touch time, one or more other devices, e.g., any other devices, may be at a larger distance from devices 102 and 140, e.g., a distance of at least 30-40cm or any other distance away.[000177] In some demonstrative aspects, the pay by touch procedure may be configured to identify the devices which are in contact at some time instance during the proximity detection period, and / or to distinguish thee two devices from other devices, which may be further away, e.g., as described below.[000178] In some demonstrative aspects, the pay by touch procedure may be configured to identify the devices which are in contact during the proximity detection period, for example, based on RSSI measurements performed by the devices, e.g., as described below.[000179] In other aspects, the pay by touch procedure may be configured to identify the devices which are in contact during the proximity detection period, for example, based on any other additional or alternative wireless communication signal measurements.[000180] In some demonstrative aspects, the pay by touch procedure may be configured to identify, select, and / or validate the devices which are in contact at the touch time, for example, based on magnetic field measurements performed by the devices, e.g., as described below.[000181] In other aspects, the pay by touch procedure may be configured to identify, select, and / or validate the devices which are in contact during proximity detection period, for example, based on any other additional or alternative measurements, e.g., of any other additional or alternative sensors.[000182] In some demonstrative aspects, the pay by touch procedure may include measuring the RSSI of each transmitting device, e.g., as described below.[000183] In some demonstrative aspects, the pay by touch procedure may be configured to identify the devices which are in contact during the proximity detection period, for example, based on a correlation between RSSI and distance, e.g., as described below.[000184] In some demonstrative aspects, the pay by touch procedure may be configured to identify the devices which are in contact during the proximity detection period, for example, by distinguishing an identified device which is in direct contact, e.g., within a distance of about 1- 2cm, from any other devices which are not in contact, e.g., at a distance of at least 30-40 cm or any other distance.[000185] In some demonstrative aspects, a first device receiving signals from a second device may determine whether the second device is potentially in close proximity to, e.g., in contact with, the first device, for example, based on an RSSI measurement of signals received from the second device, e.g., as described below.[000186] In some demonstrative aspects, the first device may determine whether the second device is potentially in close proximity to, e.g., in contact with, the first device, for example, based on a comparison between the RSSI measurement and an RSSI threshold, e.g., as described below.[000187] In some demonstrative aspects, the RSSI threshold may be based on an RSSI measurement, which may be measured at a close proximity, e.g., contact, scenario.[000188] In some demonstrative aspects, the first device may determine that the second device is potentially in close proximity to, e.g., in contact with, the first device, for example, based on a determination that the RSSI measurement is equal to or exceeds the RSSI threshold. For example, in case the RSSI measurement includes negative values, then the first device may determine that the second device is potentially in close proximity to, e.g., in contact with, the first device, for example, based on a determination that the RSSI measurement is equal to or exceeds, e.g., is greater than, the RSSI threshold.[000189] In some demonstrative aspects, the first device may determine that the second device is not potentially in close proximity to, e.g., not in contact with, the first device, for example, based on a determination that the RSSI measurement does not exceed the RSSI threshold. For example, in case the RSSI measurement includes negative values, then the first device may determine that the second device is not potentially in close proximity to, e.g., not in contact with, the first device, for example, based on a determination that the RSSI measurement does not exceed, e.g., is less than, the RSSI threshold.[000190] In some demonstrative aspects, the RSSI threshold may be configured, e.g., calibrated, for example, based on one or more properties and / or attributes of the second device. [000191] For example, the RSSI threshold may be configured, e.g., predefined, for example, based on a device type of the second device, e.g., a manufacturer of the second device, a version of the second device, a device ID, a Unique Device ID (UID), or the like.[000192] For example, wireless signals transmitted from different types of devices may result in different RSSI measurements at the close proximity, e.g., contact, scenario.[000193] In some demonstrative aspects, a device to participate in a payment transaction may be identified as a “payer” device for the transaction, or as a “receiver” device for the payment transaction.[000194] In some demonstrative aspects, the pay by touch procedure may be configured to utilize device identifiers to identify, e.g., to uniquely identify, devices, which may be allowed to participate in payment transactions, e.g., as described below.[000195] In some demonstrative aspects, server-end controller 162 may be configured to generate, allocate assign, and / or manage, device identifiers (IDs), which may identify, e.g., uniquely identify, one or more devices in system 100.[000196] For example, server-end controller 162 may be configured to allocate a first device ID to device 102, for example, to uniquely identify device 102, e.g., with respect to any other devices, which are to be allowed to participate in payment transactions managed by server 199. [000197] For example, server-end controller 162 may be configured to allocate a second device ID to device 140, for example, to uniquely identify device 140, e.g., with respect to any other devices, which are to be allowed to participate in payment transactions managed by server 199.[000198] In some demonstrative aspects, a device to participate in a payment transaction may generate a transaction ID, e.g., a unique transaction ID, which may be configured to identify the transaction.[000199] For example, user-end application 160 may be configured to generate a transaction ID, e.g., a unique transaction ID, for a transaction to be performed by device 102.[000200] For example, user-end application 161 may be configured to generate a transaction ID, e.g., a unique transaction ID, for a transaction to be performed by device 140.[000201] In some demonstrative aspects, the device to participate in the payment transaction, e.g., each of the payer device and the receiver device, may be configured to transmit one ormore advertisement messages to advertise itself for the payment transaction, e.g., as described below.[000202] In some demonstrative aspects, an advertisement message may include a device ID of the device transmitting the advertisement message, e.g., as described below.[000203] In some demonstrative aspects, the advertisement message may include device type information to identify a type of the device transmitting the advertisement message, e.g., as described below.[000204] In some demonstrative aspects, the advertisement message may include any other additional or alternative information, which may be configured to support determination of an RSSI threshold to be used by a device receiving the advertisement message.[000205] In one example, the advertisement message may include transmit (Tx) power information to indicate a Tx power of the advertisement message.[000206] In another example, the advertisement message may include an RSSI threshold indicator corresponding to the type of the device transmitting the advertisement message. For example, the advertisement message may include RSSI threshold information to define an RSSI threshold to be applied by a receiver of the advertisement message in determining proximity based on an RSSI of the advertisement message.[000207] In another example, the advertisement message may include RSSI information, e.g., Im RSSI data and / or any other device / specific RSSI data, which may be converted into a distance, e.g., with a simple formula.[000208] In other aspects, the advertisement message may include any other suitable additional or alternative information.[000209] In some demonstrative aspects, the advertisement message may include a payer (sender) / receiver indication to indicate whether the device transmitting the advertisement message is to perform role of a payer / sender or a receiver for the transaction, e.g., as described below.[000210] Some demonstrative embodiments are described with respect to a message, e.g., an advertisement message, including a payer / receiver indication to indicate whether a transmitter of the message is to perform the role of a payer or receiver for a payment transaction, e.g., as described below.[000211] In other aspects, a message, e.g., an advertisement message, may include a sender / receiver indication to indicate whether a transmitter of the message is to perform the role of a sender or receiver for a data transaction.[000212] In other aspects, a message, e.g., an advertisement message, may include any other first-role / second-role indication to indicate whether a transmitter of the message is to perform a first role or a second role for a transaction.[000213] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to operate as a first wireless communication device to transmit one or more first-transactor advertisement messages to advertise the device 102 is to perform a first transactor role for a transaction, e.g., as described below.[000214] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to scan for one or more second-transactor advertisement messages from one or more second wireless communication devices, e.g., as described below.[000215] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine a selected device, e.g., device 140, from the one or more second wireless communication devices, for example, based on proximity-detection measurements corresponding to the one or more second-transactor advertisement messages, e.g., as described below.[000216] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to process detection information from the selected device to determine whether the selected device is to be validated to perform a second transactor role for the transaction, e.g., as described below.[000217] In some demonstrative aspects, the detection information from the selected device may be based, for example, on one or more devices detected by the selected device, e.g., as described below.[000218] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to, for example, based on a determination that the selected device is to be validated to perform the second transactor role, exchange transaction information of the transaction over a wireless communication link between the first wireless communication device and the selected device, e.g., as describe below.[000219] In some demonstrative aspects, the transaction may include a monetary transaction to transfer a payment from a user of the device 102, e.g., as described below.[000220] For example, the first transactor role may include a payer role, and the second transactor role may include a payment receiver role, e.g., as described below.[000221] In other aspects, the transaction may include any other type of transaction, e.g., data transaction or any other transaction, and the first transactor role and / or the second transactor role may include any other suitable roles.[000222] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to perform the proximity-detection measurements including, for example, received power measurements corresponding to the one or more second-transactor advertisement messages, e.g., as described below.[000223] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to perform the proximity-detection measurements including, for example, Received Signal Strength Indicator (RSSI) measurements corresponding to the one or more second-transactor advertisement messages, e.g., as described below.[000224] In other aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to perform the proximity-detection measurements including any other additional or alternative type of proximity-detection measurements.[000225] In some demonstrative aspects, the one or more first-transactor advertisement messages may include one or more first BT messages, and the one or more second-transactor advertisement messages may include one or more second BT messages, e.g., as described below.[000226] In other aspects, the one or more first-transactor advertisement messages and / or the one or more second-transactor advertisement messages may include any other type of messages, which may be configured and / or communicated according to any other suitable wireless communication protocol.[000227] In some demonstrative aspects, the transaction information may be exchanged over a BT link between the first wireless communication device and the selected device, e.g., as described below.[000228] In other aspects, the transaction information may be exchanged over any other suitable type of wireless communication link between the first wireless communication device and the selected device, e.g., as described below.[000229] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine whether the selected device is to be validated to perform the second transactor role, for example, based on a determination whether the detection information from the selected device indicates that the device 102 is detected by the selecteddevice based on the one or more first-transactor advertisement messages, e.g., as described below.[000230] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine that the selected device is to be validated to perform the second transactor role, for example, based on a determination that the detection information from the selected device indicates that the device 102 is detected by the selected device based on the one or more first-transactor advertisement messages, e.g., as described below.[000231] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine that the selected device is not to be validated to perform the second transactor role, for example, based on a determination that the detection information from the selected device does not indicate that the device 102 is detected by the selected device based on the one or more first-transactor advertisement messages, e.g., as described below.[000232] In some demonstrative aspects, the detection information from the selected device may identify the one or more devices detected by the selected device.[000233] In some demonstrative aspects, the detection information from the selected device may include an indication on whether the selected device acknowledges the device 102 as the first transactor for the transaction, e.g., as described below.[000234] In other aspects, the detection information from the selected device may include any other suitable additional or alternative information.[000235] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine one or more candidate devices, for example, based on a candidate-detection criterion applied to the proximity-detection measurements corresponding to the one or more second-transactor advertisement messages, e.g., as described below.[000236] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine the selected device, for example, based on the one or more candidate devices, e.g., as described below.[000237] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to identify the selected device from the one or more candidate devices, for example, based on proximity-detection measurements corresponding to the one or more candidate devices, e.g., as described below.[000238] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to identify the selected device from the one or more candidate devices, for example, based on an input from a user of the device 102, e.g., as described below. [000239] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine whether a second wireless communication device, e.g., device 140, is to be identified as a candidate device, for example, based on a comparison between a proximity-detection measurement corresponding to a second-transactor advertisement message from the second wireless communication device and a proximitydetection threshold, e.g., as described below.[000240] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine the proximity-detection threshold, for example, based on information in the second-transactor advertisement message from the second wireless communication device, e.g., as described below.[000241] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine the proximity-detection threshold, for example, based on device identification information in the second-transactor advertisement message from the second wireless communication device, e.g., as described below.[000242] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine the proximity-detection threshold, for example, based on Transmit (Tx) power information in the second-transactor advertisement message from the second wireless communication device, e.g., as described below.[000243] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine the proximity-detection threshold, for example, based on threshold information in the second-transactor advertisement message from the second wireless communication device, e.g., as described below.[000244] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine the proximity-detection threshold, for example, based on a device type of the second wireless communication device, e.g., as described below. [000245] In other aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine the proximity-detection threshold based on any other additional or alternative information in the second-transactor advertisement message from the second wireless communication device, and / or any other additional or alternative information, e.g., from server 199 and / or any other element of system 100.[000246] In other aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine the proximity-detection threshold based on any other additional or alternative criteria.[000247] In other aspects, the proximity-detection threshold may be preconfigured or preset.[000248] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 40 centimeters, e.g., as described below.[000249] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 30 centimeters, e.g., as described below.[000250] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 20 centimeters, e.g., as described below.[000251] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 10 centimeters, e.g., as described below.[000252] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 5 centimeters, e.g., as described below.[000253] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 2 centimeters, e.g., as described below.[000254] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 1 centimeter, e.g., as described below.[000255] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of 0.5 centimeter or less, for example, for a detection of contact between the device 102 and the device 140, e.g., as described below.[000256] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine that the second wireless communication device, e.g., device 140, is to be identified as the candidate device, for example, based on a determination that the proximity-detection measurement corresponding to the second-transactor advertisement message from the second wireless communication device exceeds the proximitydetection threshold, e.g., as described below.[000257] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine that the second wireless communication device is not to be identified as the candidate device, for example, based on a determination that the proximity-detection measurement corresponding to the second-transactor advertisement message from the second wireless communication device does not exceed the proximitydetection threshold, e.g., as described below.[000258] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to store first sensor data, for example, based on sensor information from one or more sensors of the device 102, e.g. as described below.[000259] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to receive second sensor information from the selected device, for example, from device 140, e.g., as described below.[000260] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine whether the selected device is to be validated to perform the second transactor role, for example, based on the detection information from the selected device, the first sensor data, and the second sensor data, e.g., as described below.[000261] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine whether a close-proximity event is detected based on the first sensor data and the second sensor data, e.g., as described below.[000262] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine whether the selected device is to be validated to perform the second transactor role, for example, based on whether the close-proximity event is detected based on the first sensor data and the second sensor data, e.g., as described below.[000263] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine whether the close-proximity event is detected, for example, based on a correlation between the first sensor data and the second sensor data, e.g., as described below.[000264] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine whether the close-proximity event is detected, for example, based on a first event timing and a second event timing. For example, the first event timing may include a first timing of a first event detection based on the first sensor data, e.g., as measured at device 102, and the second event timing may include a second timing of a second event detection based on the second sensor data, e.g., as described below.[000265] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine that the close-proximity event is detected, for example, based on a determination that a time difference between the first event timing and the second event timing does not exceed a predefined time threshold, e.g., as described below.[000266] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine that the selected device is to be validated toperform the second transactor role, for example, based on a determination that the detection information from the selected device indicates that the device 102 is detected by the selected device based on the one or more first-transactor advertisement messages, and based on a determination that the close-proximity event is detected based on the first sensor data and the second sensor data, e.g., as described below.[000267] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to determine that the selected device is not to be validated to perform the second transactor role, for example, based on at least one of a determination that the detection information from the selected device does not indicate that the device 102 is detected by the selected device based on the one or more first-transactor advertisement messages, and / or based on a determination that the close-proximity event is not detected based on the first sensor data and the second sensor data, e.g., as described below.[000268] In some demonstrative aspects, the close-proximity event may include a distance of no more than 10 centimeters between the first wireless communication device and the selected device.[000269] In some demonstrative aspects, the close-proximity event may include a distance of no more than 5 centimeters between the first wireless communication device and the selected device.[000270] In some demonstrative aspects, the close-proximity event may include a distance of no more than 3 centimeters between the first wireless communication device and the selected device.[000271] In some demonstrative aspects, the close-proximity event may include a distance of no more than 2 centimeters between the first wireless communication device and the selected device.[000272] In some demonstrative aspects, the close-proximity event may include a distance of no more than 1 centimeter between the first wireless communication device and the selected device.[000273] In some demonstrative aspects, the close-proximity event may include a distance of no more than 0.5 centimeters between the first wireless communication device and the selected device.[000274] In some demonstrative aspects, the close-proximity event may include a touch event including contact between the first wireless communication device and the selected device, e.g., as described below.[000275] In some demonstrative aspects, the first sensor data may include first magnetic-field data from a magnetic-field sensor 165 of device 102, e.g., as described below.[000276] In some demonstrative aspects, the second sensor information may include second magnetic-field data from the selected device, e.g., from device 140.[000277] In some demonstrative aspects, the first magnetic-field data may include a plurality of magnetic-field measurements, and a plurality of time-stamps corresponding to the plurality of magnetic-field measurements, e.g., as described below.[000278] In other aspects, the first magnetic-field data may include any other suitable additional or alternative information.[000279] In some demonstrative aspects, the first sensor data may include accelerometer data from an accelerometer of the device 102, light data from a light sensor of the device 102, acoustic data from an acoustic sensor of the device 102, vibration data from a vibration sensor of the device 102, image data from an image sensor of the device 102, Near Field Communication (NFC) data from an NFC sensor of the device 102, and / or any other additional or alternative sensor data from any other additional or alternative sensor of the device 102.[000280] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to verify authenticity of a signed user information tuple (also referred to as “server- signed user information tuple”) from the selected device, e.g., device 140, for example, based on a server public key from server 199, e.g., as described below.[000281] In some demonstrative aspects, the server-signed user information tuple from the selected device may be signed by the server 199, for example, using a secret key of the server 199, e.g., as described below.[000282] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to verify authenticity of the server-signed user information tuple from the selected device, for example, using a public key of the server, e.g., as described below.[000283] In some demonstrative aspects, the signed user information tuple may include user identification information to identify a user of the selected device and a user public key corresponding to the user of the selected device, e.g., as described below.[000284] In other aspects, the signed user information tuple may include any other suitable additional or alternative information.[000285] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to send a challenge message to the selected device, e.g., as described below.[000286] In some demonstrative aspects, the challenge message may include challenge information encrypted according to the user public key corresponding to the user of the selected device, e.g., as described below.[000287] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to verify the user identification information of the selected device, for example, based on a determination that a response from the selected device is based on the challenge information, e.g., as described below.[000288] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to verify signed transaction information from the selected device, e.g., from device 140, for example, based on the user public key corresponding to the user of the selected device, e.g., as described below.[000289] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to send the signed transaction information from the selected device, e.g., from device 140, to the server 199, e.g., as described below.[000290] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to store security information corresponding to a user of the device 102, e.g., as described below. For example, the security information corresponding to a user of the device 102 may be provided by server 199, e.g., as described below.[000291] In some demonstrative aspects, the security information corresponding to a user of the device 102 may include, for example, a user public key corresponding to the user of the device 102, e.g., as described below.[000292] In some demonstrative aspects, the security information corresponding to a user of the device 102 may include, for example, a user secret key corresponding to the user of device 102, e.g., as described below.[000293] In some demonstrative aspects, the security information corresponding to a user of the device 102 may include, for example, a signed user information tuple corresponding to the user of the device 102, e.g., as described below.[000294] In some demonstrative aspects, the signed user information tuple may include user identification information to identify the user of the device 102 and the user public key corresponding to the user of the device 102, e.g., as described below.[000295] In other aspects, the signed user information tuple may include any other suitable additional or alternative information.[000296] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to send the signed user information tuple corresponding to the user of device 102 to the selected device, e.g., to device 140, e.g., as described below.[000297] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to process a challenge message from the selected device to decrypt challenge information according to the user secret key corresponding to the user of device 102, e.g., as described below.[000298] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to send to the selected device a response based on the challenge information, e.g., as described below.[000299] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to send signed transaction information to the selected device, e.g., to device 140, e.g., as described below.[000300] In some demonstrative aspects, the signed transaction information may be signed based on the user secret key corresponding to the user of the device 102, e.g., as described below.[000301] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to confirm execution of the transaction with server 199 based on the transaction information exchanged with the selected device, e.g., device 140, e.g., as described below.[000302] In some demonstrative aspects, the transaction information may include first user identification information to identify the user of the first wireless communication device, e.g., device 102, second user identification information to identify a user of the selected device, e.g., device 140, one or more transaction identifiers, and a transaction amount, e.g., as described below.[000303] In other aspects, the transaction information may include any other suitable additional or alternative information.[000304] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to configure a first-transactor advertisement message of the one or more first-transactor advertisement messages transmitted by device 102 to include user identification information, and a role identifier, e.g., as described below.[000305] In some demonstrative aspects, the user identification information may be configured to uniquely identify the device 102 for a transaction service, e.g., as described below. [000306] In some demonstrative aspects, the role identifier may be set to a predefined role identifier setting to identify that the device 102 is to perform the first transactor role, e.g., as described below.[000307] In some demonstrative aspects, the first-transactor advertisement message may include device type information to identify a type of the device 102.[000308] In some demonstrative aspects, the first-transactor advertisement message may include proximity-detection threshold information to identify a proximity-detection threshold to be applied to a proximity-detection measurement corresponding to the first-transactor advertisement message, e.g., as described below.[000309] In some demonstrative aspects, the first-transactor advertisement message may include Transmit (Tx) power information corresponding to a Tx power of the first-transactor advertisement message, e.g., a s described below.[000310] In other aspects, the first-transactor advertisement message may include any other additional or alternative type of information.[000311] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to process a received second-transactor advertisement message of the one or more second-transactor advertisement messages, for example, to identify user identification information, and a role identifier, e.g., as described below.[000312] In some demonstrative aspects, the user identification information in the second- transactor advertisement message may be configured to uniquely identify for a transaction service a wireless communication device from which the second-transactor advertisement message is transmitted, e.g., as described below.[000313] In some demonstrative aspects, the role identifier in the second-transactor advertisement message may be set to a predefined role identifier setting to identify that the device, from which the second-transactor advertisement message is transmitted, is to perform the second transactor role, e.g., as described below.[000314] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to process the second-transactor advertisement message to identify device type information to identify a type of the device, from which the second- transactor advertisement message is transmitted, e.g., as described below.[000315] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to process the second-transactor advertisement message to identify proximity-detection threshold information to identify a proximity-detection threshold to be applied to a proximity-detection measurement corresponding to the second-transactor advertisement message, e.g., as described below.[000316] In some demonstrative aspects, controller 160 may be configured to control, trigger, cause, and / or instruct device 102 to process the second-transactor advertisement message to identify Transmit (Tx) power information corresponding to a Tx power of the second-transactor advertisement message, e.g., as described below.[000317] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to operate as a first wireless communication device to transmit one or more second-transactor advertisement messages to advertise the first wireless communication device is to perform a second transactor role for a transaction, e.g., as described below.[000318] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to scan for one or more first-transactor advertisement messages from one or more second wireless communication devices, for example, the one or more first-transactor advertisement messages from device 102, e.g., as described below.[000319] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to generate detection information, for example, based on one or more detected devices to perform a first transactor role, e.g., as described below.[000320] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine the one or more detected devices, for example, based on proximity-detection measurements corresponding to the one or more first-transactor advertisement messages, e.g., as described below.[000321] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to send the detection information to a second wireless communication device of the one or more second wireless communication devices, for example, to device 102, e.g., as described below.[000322] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to exchange transaction information of the transaction over a wireless communication link between device 102 and the second wireless communication device, e.g., as described below.[000323] In some demonstrative aspects, the transaction may include a monetary transaction to transfer a payment to a user of the device 102, e.g., as described below.[000324] For example, the first transactor role may include a payer role, and the second transactor role may include a payment receiver role, e.g., as described below.[000325] In other aspects, the transaction may include any other type of transaction, e.g., data transaction or any other transaction, and the first transactor role and / or the second transactor role may include any other suitable roles.[000326] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to perform the proximity-detection measurements including, for example, received power measurements corresponding to the one or more first-transactor advertisement messages, e.g., as described below.[000327] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to perform the proximity-detection measurements including, for example, Received Signal Strength Indicator (RSSI) measurements corresponding to the one or more first-transactor advertisement messages, e.g., as described below.[000328] In other aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to perform the proximity-detection measurements including any other additional or alternative type of proximity-detection measurements.[000329] In some demonstrative aspects, the one or more first-transactor advertisement messages may include one or more first BT messages, and the one or more second-transactor advertisement messages may include one or more second BT messages, e.g., as described below.[000330] In other aspects, the one or more first-transactor advertisement messages and / or the one or more second-transactor advertisement messages may include any other type of messages, which may be configured and / or communicated according to any other suitable wireless communication protocol.[000331] In some demonstrative aspects, the transaction information may be exchanged over a BT link between the first wireless communication device and the selected device, e.g., as described below.[000332] In other aspects, the transaction information may be exchanged over any other suitable type of wireless communication link between the first wireless communication device and the selected device, e.g., as described below.[000333] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine whether a second wireless communication device, e.g., device 102, is to be identified as a detected device, for example, based on a comparison between a proximity-detection measurement corresponding to a first-transactor advertisement message from the second wireless communication device and a proximitydetection threshold, e.g., as described below.[000334] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine the proximity-detection threshold, for example, based on information in the first-transactor advertisement message from the second wireless communication device, e.g., as described below.[000335] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine the proximity-detection threshold, for example, based on device identification information in the first-transactor advertisement message from the second wireless communication device, e.g., as described below.[000336] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine the proximity-detection threshold, for example, based on Transmit (Tx) power information in the first-transactor advertisement message from the second wireless communication device, e.g., as described below.[000337] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine the proximity-detection threshold based on threshold information in the first-transactor advertisement message from the second wireless communication device, e.g., as described below.[000338] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine the proximity-detection threshold based on a device type of the second wireless communication device, e.g., as described below.[000339] In other aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine the proximity-detection threshold based on any other additional or alternative information in the first-transactor advertisement message from the second wireless communication device, and / or any other additional or alternative information, e.g., from server 199 and / or any other element of system 100.[000340] In other aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine the proximity-detection threshold based on any other additional or alternative criteria.[000341] In other aspects, the proximity-detection threshold may be preconfigured or preset. [000342] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 40 centimeters, e.g., as described below.[000343] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 30 centimeters, e.g., as described below.[000344] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 20 centimeters, e.g., as described below.[000345] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 10 centimeters, e.g., as described below.[000346] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 5 centimeters, e.g., as described below.[000347] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 2 centimeters, e.g., as described below.[000348] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of no more than 1 centimeter, e.g., as described below.[000349] In some demonstrative aspects, the proximity-detection threshold may be configured for a detection distance of 0.5 centimeter or less, for example, for a detection of contact between the device 102 and the device 140, e.g., as described below.[000350] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine that the second wireless communication device, e.g., device 102, is to be identified as the detected device, for example, based on a determination that the proximity-detection measurement corresponding to the first-transactor advertisement message from the second wireless communication device exceeds the proximity-detection threshold, e.g., as described below.[000351] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to determine that the second wireless communication device, e.g., device 102, is not to be identified as the detected device, for example, based on a determination that the proximity-detection measurement corresponding to the first-transactor advertisement message from the second wireless communication device does not exceed the proximity-detection threshold, e.g., as described below.[000352] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to store sensor data based on sensor information from one or more sensors of the device 140, e.g., as described below.[000353] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to transmit the sensor data to the second wireless communication device, for example, to device 102, e.g., as described below.[000354] In some demonstrative aspects, the sensor data of device 140 may include magnetic- field data from a magnetic-field sensor 166 of the device 140, e.g., as described below.[000355] In some demonstrative aspects, the magnetic-field data may include, for example, a plurality of magnetic-field measurements, and a plurality of time-stamps corresponding to the plurality of magnetic-field measurements, e.g., as described below.[000356] In other aspects, the magnetic-field data may include any other suitable additional or alternative information.[000357] In some demonstrative aspects, the sensor data of device 140 may include accelerometer data from an accelerometer of the device 140, light data from a light sensor of the device 140, acoustic data from an acoustic sensor of the device 140, vibration data from a vibration sensor of the device 140, image data from an image sensor of the device 140, NFC data from an NFC sensor of the device 140, and / or any other additional or alternative sensor data from any other additional or alternative sensor of the device 140.[000358] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to verify authenticity of a signed user information tuple (server- signed user information tuple) from the second wireless communication device, e.g., device 102, for example, based on a server public key from server 199, e.g., as described below. [000359] In some demonstrative aspects, the server-signed user information tuple from the second wireless communication device may be signed by the server 199, for example, using a secret key of the server 199, e.g., as described below.[000360] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to verify authenticity of the server-signed user information tuple from the second wireless communication device, for example, using a public key of the server, e.g., as described below.[000361] In some demonstrative aspects, the signed user information tuple from the second wireless communication device, e.g., device 102, may include, for example, user identification information to identify a user of the second wireless communication device, and a user public key corresponding to the user of the second wireless communication device, e.g., as described below.[000362] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to send a challenge message to the second wireless communication device, for example, to device 102, e.g., as described below.[000363] In some demonstrative aspects, the challenge message may include, for example, challenge information encrypted according to the user public key corresponding to the user of the second wireless communication device, e.g., as described below.[000364] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to verify the user identification information of the second wireless communication device, e.g., device 102, for example, based on a determination that a response from the second wireless communication device is based on the challenge information, e.g., as described below.[000365] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to verify signed transaction information from the second wireless communication device, e.g., device 102, for example, based on the user public key corresponding to the user of the second wireless communication device, e.g., as described below.[000366] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to send the signed transaction information from the second wireless communication device, e.g., device 102, to the server 199, e.g., as described below.[000367] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to store security information corresponding to a user of the device 140, e.g., as described below.[000368] In some demonstrative aspects, the security information corresponding to the user of the device 140 may include, for example, a user public key corresponding to the user of the device 140, e.g., as described below.[000369] In some demonstrative aspects, the security information corresponding to the user of the device 140 may include, for example, a user secret key corresponding to the user of the device 140, e.g., as described below.[000370] In some demonstrative aspects, the security information corresponding to the user of the device 140 may include, for example, and a signed user information tuple corresponding to the user of the device 140, e.g., as described below.[000371] In some demonstrative aspects, the signed user information tuple corresponding to the user of the device 140 may include, for example, user identification information to identifythe user of the device 140, and the user public key corresponding to the user of the device 140, e.g., as described below.[000372] In other aspects, the signed user information tuple corresponding to the user of the device 140 may include any other suitable additional or alternative information.[000373] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to send the signed user information tuple corresponding to the user of the device 140 to the second wireless communication device, for example, to device 102, e.g., as described below.[000374] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to process a challenge message from the second wireless communication device, e.g., device 102, for example, to decrypt challenge information according to the user secret key corresponding to the user of the device 140, e.g., as described below.[000375] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to send to the second wireless communication device, e.g., device 102, a response based on the challenge information, e.g., as described below.[000376] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to send signed transaction information to the second wireless communication device, for example, device 102, e.g., as described below.[000377] In some demonstrative aspects, the signed transaction information may be signed based on the user secret key corresponding to the user of the device 140, e.g., as described below.[000378] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to confirm execution of the transaction with server 199 based on the transaction information exchanged with the second wireless communication device, e.g., device 102, e.g., as described below.[000379] In some demonstrative aspects, the transaction information may include first user identification information to identify the user of the first wireless communication device, e.g., device 140, second user identification information to identify a user of the selected device, e.g., device 102, one or more transaction identifiers, and a transaction amount, e.g., as described below.[000380] In other aspects, the transaction information may include any other suitable additional or alternative information.[000381] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to configure a second-transactor advertisement message of the one or more second-transactor advertisement messages to include user identification information, and a role identifier, e.g., as described below.[000382] In some demonstrative aspects, the user identification information in the second- transactor advertisement message may be configured to uniquely identify the device 140 for a transaction service, e.g., as described below.[000383] In some demonstrative aspects, the role identifier in the second-transactor advertisement message may be set to a predefined role identifier setting to identify that the device 140 is to perform the second transactor role, e.g., as described below.[000384] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to configure the second-transactor advertisement message to include device type information to identify a type of the device 140, e.g., as described below.[000385] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to configure the second-transactor advertisement message to include proximity-detection threshold information to identify a proximity-detection threshold to be applied to a proximity-detection measurement corresponding to the second-transactor advertisement message, e.g., as described below.[000386] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to configure the second-transactor advertisement message to include Transmit (Tx) power information corresponding to a Tx power of the second-transactor advertisement message, e.g., as described below.[000387] In other aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to configure the second-transactor advertisement message to include any other suitable additional or alternative information.[000388] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to process a received first-transactor advertisement message of the one or more first-transactor advertisement messages, for example, to identify user identification information, and a role identifier, e.g., as described below.[000389] In some demonstrative aspects, the user identification information in the first- transactor advertisement message may be configured to uniquely identify for a transaction service a wireless communication device, e.g., device 102, from which the first-transactor advertisement message is transmitted, e.g., as described below.[000390] In some demonstrative aspects, the role identifier in the first-transactor advertisement message may be set to a predefined role identifier setting to identify that the wireless communication device, e.g., device 102, from which the first-transactor advertisement message is transmitted, is to perform the first transactor role, e.g., as described below.[000391] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to process the received first-transactor advertisement message to identify type information, for example, to identify a type of the wireless communication device, e.g., device 102, from which the first-transactor advertisement message is transmitted, e.g., as described below.[000392] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to process the received first-transactor advertisement message to identify proximity-detection threshold information, for example, to identify a proximitydetection threshold to be applied to a proximity-detection measurement corresponding to the first-transactor advertisement message, e.g., as described below.[000393] In some demonstrative aspects, controller 161 may be configured to control, trigger, cause, and / or instruct device 140 to process the received first-transactor advertisement message to identify Transmit (Tx) power information corresponding to a Tx power of the first-transactor advertisement message, e.g., as described below.[000394] In some demonstrative aspects, for example, user-end application 160 may be configured to cause device 102 perform the role of a payer for a payment transaction, and / or user-end application 161 may be configured to cause device 140 perform the role of a receiver for the payment transaction.[000395] For example, user-end application 160 may be configured to cause device 102 to transmit one or more advertisement messages to advertise device 102 for the payment transaction, for example, based on initiation of the transaction session at device 102, e.g., at the beginning of the transaction session.[000396] In one example, the initiation of the transaction session at device 102 may be triggered, for example, by a user of device 102, e.g., when attempting to perform a payment at a POS / POP and / to another person.[000397] For example, user-end application 160 may be configured to cause device 102 to transmit an advertisement message including a device ID of the device 102, device type information to indicate a type of the device 102 and / or RSSI information to define an RSSI threshold to be applied with respect to an RSSI of the advertisement message, and apayer / receiver indication to indicate that the device 102 is to perform role of a payer for the payment transaction.[000398] For example, user-end application 161 may be configured to cause device 140 to transmit one or more advertisement messages to advertise device 140 for the payment transaction, for example, based on initiation of the transaction session at device 140, e.g., at the beginning of the transaction session.[000399] In one example, the initiation of the transaction session at device 140 may be triggered, for example, by a user of device 140, e.g., a cashier at a POS / POP, or another person to receive payment from the user of device 102.[000400] For example, user-end application 161 may be configured to cause device 140 to transmit an advertisement message including a device ID of the device 140, device type information to indicate a type of the device 140 and / or RSSI information to define an RSSI threshold to be applied with respect to an RSSI of the advertisement message, and a payer / receiver indication to indicate that the device 140 is to perform role of a receiver for the payment transaction.[000401] In some demonstrative aspects, the pay by touch procedure may be configured to define that:• All the devices can be identified either as a receiver or as a payer / sender.• Each device is allocated its own unique device ID, e.g., a may be assigned by service / server.• For each transaction each device generates a unique transaction ID.• At the beginning of the process each device advertises itself and at the same time scans for other devices.• The information advertised includes, for example, at least the device ID, the type of the device, and if the device is a payer or a receiver, e.g., for a specific transaction. In one example, information advertised may include an indicator / flag to indicate the advertisement is being sent from a device implementing the pay by touch procedure.[000402] In some demonstrative aspects, the pay by touch procedure may be configured to define that the receiver device of the payment transaction is to scan for devices, e.g., all devices, who advertise themselves as payers.[000403] In some demonstrative aspects, the receiver device of the payment transaction, e.g., device 140, may be configured to determine whether a transmitter of a received advertisementmessage is to be identified as a detected payer device, for example, based on the payer / receiver indication in the received advertisement message.[000404] In some demonstrative aspects, the receiver device of the payment transaction, e.g., device 140, may be configured to determine whether a detected payer device is to be identified as a potential payer device, for example, based on an RSSI measurement with respect to an advertisement message received from the detected payer device, e.g., as described below.[000405] In some demonstrative aspects, the receiver device of the payment transaction, e.g., device 140, may be configured to determine whether a detected payer device is to be identified as a potential payer device, for example, based on a comparison between the RSSI measurement for the detected payer device and an RSSI threshold, e.g., as described below.[000406] In some demonstrative aspects, the receiver device of the payment transaction, e.g., device 140, may be configured to determine the RSSI threshold to be used for the detected payer device, for example, based on the device type information and / or the RSSI information in the advertisement message received from the detected payer device, e.g., as described below.[000407] In some demonstrative aspects, the receiver device of the payment transaction, e.g., device 140, may be configured to determine that a detected payer device is to be identified as a potential payer device, for example, based on a determination that the RSSI measurement for the detected payer device is equal to or exceeds, e.g., is greater than, the RSSI threshold for the detected payer device, e.g., as described below. For example, the RSSI measurement and the RSSI threshold may be negative, and accordingly, an RSSI measurement equal to or greater than the RSSI threshold may correspond to a stronger received signal, which may indicate a proximity event.[000408] In some demonstrative aspects, the receiver device of the payment transaction, e.g., device 140, may be configured to determine that a detected payer device is not to be identified as a potential payer device, for example, based on a determination that the RSSI measurement for the detected payer device does not exceed, e.g., is lower than, the RSSI threshold for the detected payer device, e.g., as described below.[000409] In some demonstrative aspects, the receiver device of the payment transaction, e.g., device 140, may be configured to determine a list of potential payer devices, for example, including one or more detected payer devices, which are classified as potential payer devices, e.g., as described below.[000410] In some demonstrative aspects, the pay by touch procedure may be configured to define that the receiver device of the payment transaction, e.g., device 140, is to:Scan for all devices that advertise themselves as Payers.Ignore all Payers with RSSI out of the threshold defined for each payer’s device type.• Creates a list of all device IDs which are Payers in close proximity, e.g., in contact with the receiver itself.[000411] In some demonstrative aspects, the pay by touch procedure may be configured to define that the payer device of the payment transaction is to scan for devices, e.g., all devices, who advertise themselves as receivers.[000412] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine whether a transmitter of a received advertisement message is to be identified as a detected receiver device, for example, based on the payer / receiver indication in the received advertisement message.[000413] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine whether a detected receiver device is to be identified as a potential receiver device, for example, based on an RSSI measurement with respect to an advertisement message received from the detected receiver device, e.g., as described below.[000414] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine whether a detected receiver device is to be identified as a potential receiver device, for example, based on a comparison between the RSSI measurement for the detected receiver device and an RSSI threshold, e.g., as described below.[000415] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine the RSSI threshold to be used for the detected receiver device, for example, based on the device type information and / or RSSI information in the advertisement message received from the detected receiver device, e.g., as described below. [000416] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine that a detected receiver device is to be identified as a potential receiver device, for example, based on a determination that the RSSI measurement for the detected receiver device is equal to or exceeds, e.g., is greater than, the RSSI threshold for the detected receiver device, e.g., as described below.[000417] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine that a detected receiver device is not to be identified as a potential receiver device, for example, based on a determination that the RSSI measurementfor the detected receiver device does not exceed, e.g., is lower than, the RSSI threshold for the detected receiver device, e.g., as described below.[000418] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine a list of potential receiver devices, for example, including one or more detected receiver devices, which are classified as potential receiver devices, e.g., as described below.[000419] In some demonstrative aspects, it may be assumed that in a typical scenario the payer device may usually detect a single potential receiver device, e.g., based on the RSSI detection mechanism. However, there may be some scenarios where the payer device may detect two or more potential receiver devices, for example, in case another receiver device in an area of the payer device transmits advertisement messages with relatively high transmission power.[000420] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine a selected potential receiver device, for example, based on the list of potential receiver devices, e.g., as described below.[000421] In one example, in case the list of potential receiver devices includes only a single potential receiver device, then the selected potential receiver device may include the single potential receiver device.[000422] In one example, the payer device of the payment transaction, e.g., device 102, may be configured to confirm the selection of the potential receiver device, for example, based on one or more criteria, e.g., even in case the list of potential receiver devices includes only a single potential receiver device, e.g., as described below.[000423] For example, the payer device of the payment transaction, e.g., device 102, may be configured to confirm the selection of the potential receiver device based on the very-close- proximity detection technique, e.g., the touch or near-touch detection technique, as described below.[000424] In another example, the payer device of the payment transaction, e.g., device 102, may be configured to determine the selected potential receiver device based on any suitable selection criterion to be applied to the list of potential receiver devices, e.g., in case the list of potential receiver devices includes more than one potential receiver device.[000425] In one example, the payer device of the payment transaction, e.g., device 102, may be configured to determine the selected potential receiver device as the potential receiver device which is determined to be closest to the payer device, e.g., the potential receiver device havinga largest difference between the RSSI measurement for the detected receiver device and the RSSI threshold for the detected receiver device.[000426] In another example, the payer device of the payment transaction, e.g., device 102, may be configured to determine the selected potential receiver device from the list of potential receiver devices, for example, based on the very-close-proximity detection technique, e.g., the touch or near- touch detection technique, as described below.[000427] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to connect to the selected potential receiver device, for example, via a BT connection, e.g., a BLE connection, and / or any other wireless and / or wired communication connection.[000428] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to retrieve from the selected potential receiver device the list of potential payer devices identified by the selected potential receiver device. For example, device 102 may retrieve from device 140 the list of potential payer devices identified by device 140, e.g., via the BT connection.[000429] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine whether the selected potential receiver device is to be identified as a validated receiver device for the payment transaction, for example, based on the list of potential payer devices identified by the selected potential receiver device, e.g., as described below.[000430] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine whether the list of potential payer devices identified by the selected potential receiver device includes the device ID of the payer device, e.g., as described below.[000431] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine that the selected potential receiver device is to be identified as a validated receiver device for the payment transaction, for example, based on a determination that the list of potential payer devices identified by the selected potential receiver device includes the device ID of the payer device, e.g., as described below.[000432] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine that the selected potential receiver device is not to be identified as a validated receiver device for the payment transaction, for example, based ona determination that the list of potential payer devices identified by the selected potential receiver device does not include the device ID of the payer device, e.g., as described below.[000433] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine whether the selected potential receiver device is to be identified as a validated receiver device for the payment transaction, for example, based on a very-close-proximity detection technique, e.g., a touch or near-touch detection technique, e.g., as described below.[000434] In some demonstrative aspects, the very-close-proximity detection technique may include, or may be based on, a magnetic -field proximity detection mechanism, e.g., as described below.[000435] In other aspects, the very-close-proximity detection technique may include, or may be based on, any other suitable additional or alternative mechanism.[000436] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, may be configured to determine whether the selected potential receiver device is to be identified as a validated receiver device for the payment transaction, for example, based on the very-close-proximity detection technique, e.g., the magnetic-field proximity detection mechanism, e.g., as described below.[000437] In some demonstrative aspects, the very-close-proximity detection technique, e.g., the magnetic-field proximity detection mechanism, and / or any other additional or alternative mechanism may be used in addition to, or instead of the use of the list of potential payer devices identified by the selected potential receiver device.[000438] In one example, the very-close-proximity detection technique, e.g., the magnetic- field proximity detection mechanism, may be implemented by the payer device as a second validation step to re-validate the receiver device for the payment transaction.[000439] In some demonstrative aspects, the payer device of the payment transaction, e.g., device 102, and the receiver device of the payment transaction, e.g., device 140, may exchange transaction data, e.g., via the BT connection, for example, based on validation of the receiver device by the payer device and / or validation of the payer device by the receiver device, e.g., as described below.[000440] For example, the two devices, e.g., device 102 and device 140, may exchange transaction data, for example, once the two devices are identified as being in contact and validated to participate in the payment transaction.[000441] For example, at the end of the exchange of the transaction data, both devices, e.g., device 102 and device 140, may have an exact copy of the transaction details.[000442] For example, both devices, e.g., device 102 and device 140, may report the transaction details to a backend server, e.g., server 199.[000443] In some demonstrative aspects, the server 199 may confirm the transaction, for example, based on a comparison between the transaction details received from the payer device and the transaction details received from the receiver device.[000444] In some demonstrative aspects, the server 199 may confirm the transaction, for example, based on a match between the transaction details received from the payer device and the transaction details received from the receiver device.[000445] In some demonstrative aspects, the server 199 may confirm the transaction, for example, only when there is an exact match between the transaction details received from the payer device and the transaction details received from the receiver device.[000446] In some demonstrative aspects, the pay by touch procedure may be configured to define that the payer device of the payment transaction, e.g., device 102, is to:• Scan for all devices that advertise themselves as Receivers.• Ignore all Receivers with RSSI out of the threshold defined for each receiver’s device type.• Receivers with RSSI within the threshold are regarded as receivers in close proximity. Receivers in close proximity (i.e. in contact with the Payer itself) are potential candidates for transferring funds.• Based on the assumptions described above, there will usually be only a single Receiver in contact with that Payer. This may be the chosen candidate. In the case that there is more than a single Receiver in the candidates list, then the closest receiver may be assumed to be the best candidate for transfer. As an alternative, when there is more than a single Receiver the user of the sender device may be queried to choose the receiver device from the list.• Once a receiver candidate is chosen, the Payer connects to that Receiver in order to read and write data with it.• After the first connection was established by a Payer, the connected receiver will flag (e.g., using a Semaphore technique) itself as connected in order to prevent connection from other Payers.• Upon connecting, the Payer reads from the Receiver the list of Payers that are in close proximity to that Receiver.• The Payer looks for its own ID in the list of Payers within the RSSI threshold that were observed by the connected Receiver. If it’s not in the list (i.e. the Receiver did not see the Payer in close proximity) then the connection is closed. If there was more than a single candidate Receiver in the Payer’s list, the Payer connects to the next candidate and repeats the same check.• A 2nd, e.g., optional, validation of the candidate receiver may be performed, e.g., using the magnetic-field measurement, e.g., by a magnetic sensor and / or any other very-close-proximity detection mechanism, e.g., as described below.• Once a candidate is validated, the Payer reads the unique data from the Receiver, and writes to the Receiver its own unique data including the transfer details (amount, time).• This transaction between the payer and receiver may optionally be performed offline. For example, both sides may save the information, and later send it to the server, e.g., server 199, for approval.• A mechanism may optionally be implemented for offline Device identity and / or transaction detail validation, for example, to ensure secure offline fund transfer between the devices, e.g., as described below.• The Payer marks the transaction as completed and closes the connection.[000447] In some demonstrative aspects, user-end application 160 and / or user-end application 161 may be configured to implement one or more operations of and / or functionalities of a very- close-proximity detection mechanism, which may be configured to detect and / or validate a very-close-proximity between devices 102 and 140, e.g., as described below.[000448] In some demonstrative aspects, very-close-proximity detection mechanism may include, or may be based on, a magnetic-measurement proximity detection technique, e.g., as described below.[000449] In other aspects, any other additional or alternative very-close-proximity detection mechanism may be implemented.[000450] In some demonstrative aspects, user-end application 160 and / or user-end application 161 may be configured to implement one or more operations of and / or functionalities of a magnetic-measurement proximity detection technique, which may be based on measurements of a magnetic field, e.g., as described below.[000451] In some demonstrative aspects, the magnetic-measurement proximity detection technique may be based on a detected change in a magnetic field, e.g., as described below.[000452] For example, a first device may be configured to implement the magnetic- measurement proximity detection technique to detect proximity of the first device to a second device, for example, based on a measured magnetic field at the first device, e.g., as described below.[000453] In one example, user-end application 160 may be configured to detect proximity of the device 102 to a second device, e.g., device 140, for example, based on a detected change in a magnetic field measured at the device 102, e.g., as described below.[000454] In one example, user-end application 161 may be configured to detect proximity of the device 140 to a second device, e.g., device 102, for example, based on a detected change in a magnetic field measured at the device 140, e.g., as described below.[000455] In some demonstrative aspects, there may be a significant jump in a magnetic field measured by a first device, for example, when a second device is brought into close proximity of the first device, e.g., when the first and second devices are touching one another, or almost touching one another.[000456] In some demonstrative aspects, a device to participate in the payment transaction, e.g., each of the payer device and the receiver device, may be configured to monitor a magnetic field at the device, for example using a magnetic sensor of the device, e.g., as described below. [000457] In some demonstrative aspects, the device to participate in the payment transaction, e.g., each of the payer device and the receiver device, may be configured to identify a change, e.g., a significant increase, in the monitored magnetic field.[000458] In some demonstrative aspects, the payer device may be configured to receive from the receiver device timing information to indicate a timing of a detected change, e.g., significant increase, in the magnetic field as detected at the receiver device.[000459] In some demonstrative aspects, the payer device may be configured to validate the receiver device, for example, based on a comparison between the timing of the detected change in the magnetic field as detected at the receiver device, and a timing of the detected change in the magnetic field as detected at the payer device.[000460] In some demonstrative aspects, the payer device may be configured to validate the receiver device, for example, based on a determination that the timing of the detected change in the magnetic field as detected at the receiver device substantially matches the timing of the detected change in the magnetic field as detected at the payer device.[000461] For example, user-end application 160 may be configured to cause device 102 to monitor a magnetic field at device 102, e.g., based on information from a magnetic sensor 165 of device 102.[000462] For example, user-end application 161 may be configured to cause device 140 to monitor a magnetic field at device 140, e.g., based on information from a magnetic sensor 166 of device 140.[000463] For example, user-end application 160 may be configured to identify first timing information of a time at which a change, e.g., a significant increase, is detected in the magnetic field at device 102, e.g., as detected by magnetic sensor 165.[000464] For example, user-end application 160 may be configured to retrieve from device 140 second timing information of a time at which a change, e.g., a significant increase, is detected in the magnetic field at device 140, e.g., as detected by magnetic sensor 166.[000465] For example, user-end application 160 may be configured to determine whether the device 140 is to be identified as a validated receiver device for the payment transaction, for example, based on a comparison between the first timing information and the second timing information.[000466] For example, user-end application 160 may be configured to determine that the device 140 is to be identified as a validated receiver device for the payment transaction, for example, based on a determination that the time indicated by the first timing information is substantially close to, e.g., within a predefined time difference from, the time indicted by the second timing information.[000467] For example, user-end application 160 may be configured to determine that the device 140 is to be identified as a non-validated receiver device for the payment transaction, for example, based on a determination that the time indicated by the first timing information is not substantially close to, e.g., is not within the predefined time difference from, the time indicted by the second timing information.[000468] In some demonstrative aspects, a pay by touch procedure may be configured to define that a payer device of a payment transaction, e.g., device 102, and / or a receiver device of a payment transaction, e.g., device 140, are to perform one or more of the following operations for validation based on a magnetic-field detection:• Each mobile phone is equipped with a magnetic sensor.• Upon starting the advertisement stage, the recording of the magnetic sensor starts as well, at the highest sampling rate.• A time series is saved with sets of (T, Mx, My, Mz) where T is the local time in milliseconds and M is the magnetic signal in 3 axes.• Both Payers and Receivers create these lists.• The action of touching the 2 devices is expected to create a significant and clear jump in the observed magnetic signal in both the devices.• The payer may determine whether the receiver device is to be validated, for example, based on comparison between the magnetic information, e.g., magnetic time series, sensed by the payer device, and the magnetic information, e.g., magnetic time series, sensed by the receiver device.• For example, upon connecting via BLE, the Payer compares the time of the jump Tr of the Chosen Candidate Receiver to its own measured time of jump in magnetic signal Tp.• For example, If ITp - Tri <= Max Allowed Dif, then the candidate is validated. Any other suitable criterion may be defined to detect the proximity of the receiver device to the payer device, for example, based on the magnetic information, e.g., magnetic time series, sensed by the payer device, and the magnetic information, e.g., magnetic time series, sensed by the receiver device.[000469] In some demonstrative aspects, a device, e.g., device 102, may be configured to detect proximity of the device to a second device, e.g., device 140, for example, based on a magnetic field measured by a magnetic sensor of the device, e.g., magnetic sensor 165, as described above.[000470] In some demonstrative aspects, a device, e.g., device 102, may be configured to detect proximity of the device to the second device, e.g., device 140, for example, based on any other additional or alternative measurements of any other additional or alternative sensor of the device.[000471] For example, user-end application 160 may be configured to cause device 102 to identify proximity of device 102 to device 140 based on information from an accelerometer of device 102, a light sensor of device 102, an acoustic sensor, e.g., a microphone, of device 102, an image sensor of device 102, and / or any other additional or alternative sensor of device 102. [000472] In one example, user-end application 160 may be configured to cause device 102 to identify proximity of device 102 to device 140 based on a detected synchronization between acceleration information detected by an accelerometer of device 102 and accelerationinformation detected by device 140, e.g., by performing one or more of the operations described above with respect to detecting synchronization between the magnetic field information.[000473] For example, user-end application 160 may be configured to cause device 102 to identify proximity of device 102 to device 140 based on a detected synchronization in time between a first timing of a change, e.g., an increase, in an acceleration measurement detected by the accelerometer of device 102, and a second timing of a change, e.g., an increase, in an acceleration measurement detected by the accelerometer of device 140.[000474] For example, user-end application 160 may be configured to cause device 102 to identify proximity of device 102 to device 140 based on first accelerometer information including a plurality of acceleration measurements performed at device 102, and second accelerometer information including a plurality of acceleration measurements received from device 140.[000475] For example, user-end application 160 may be configured to cause device 102 to determine whether a close-proximity event is detected based on the first accelerometer information and the second sensor accelerometer information.[000476] For example, user-end application 160 may be configured to cause device 102 to determine whether the close-proximity event is detected based on a correlation between the first accelerometer information and the second accelerometer information.[000477] For example, user-end application 160 may be configured to cause device 102 to determine whether the close-proximity event is detected based on a first accelerometer event timing and a second accelerometer event timing. For example, the first accelerometer event timing may include a first timing of a first event detection based on the first accelerometer information, and / / or the second accelerometer event timing may include a second timing of a second event detection based on the second accelerometer information.[000478] For example, user-end application 160 may be configured to cause device 102 to determine that the close-proximity event is detected based on a determination that a time difference between the first accelerometer event timing and the second accelerometer event timing does not exceed a predefined time threshold.[000479] In another example, user-end application 160 may be configured to cause device 102 to generate a vibration signal, e.g., using a vibration actuator of device 102. For example, userend application 160 may be configured to cause device 102 to identify proximity of device 102 to device 140, for example, based on acceleration information detected by an accelerometer of device 140. For example, user-end application 160 may be configured to cause device 102 toidentify proximity of device 102 to device 140, for example, based on detection of the vibration signal in the acceleration information from device 140.[000480] In another example, user-end application 160 may be configured to cause device 102 to identify proximity of device 102 to device 140, for example, based on a detected vibration signal in acceleration information detected by an accelerometer of device 102, for example, when device 140 is operated to generate a vibration signal.[000481] In another example, user-end application 160 may be configured to cause device 102 to identify proximity of device 102 to device 140 based on a detected synchronization between light information detected by a light sensor of device 102 and light information detected by device 140, e.g., by performing one or more of the operations described above with respect to detecting synchronization between the magnetic field information.[000482] In another example, user-end application 160 may be configured to cause device 102 to identify proximity of device 102 to device 140 based on a detected synchronization between sound information detected by an acoustic sensor of device 102 and acoustic information detected by device 140, e.g., by performing one or more of the operations described above with respect to detecting synchronization between the magnetic field information.[000483] In another example, user-end application 160 may be configured to cause device 102 to identify proximity of device 102 to device 140 based on a detected synchronization between image information detected by an image sensor, e.g., a camera, of device 102 and image information detected by device 140, e.g., by performing one or more of the operations described above with respect to detecting synchronization between the magnetic field information.[000484] In some demonstrative aspects, a device, e.g., device 102, may be configured to detect proximity of the device to the second device, e.g., device 140, for example, based on information from an NFC module of device 102, and may establish a BT link with device 140, for example, based on the information from the NFC module.[000485] Fig. 2(a)-2(c) are schematic flow-chart illustrations of a method of executing a transaction based on wireless-based proximity detection, in accordance with some demonstrative aspects.[000486] For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to perform the role of a payer (sender) device of a payment transaction by performing one or more operations of the method of Fig. 2(a)-2(c).[000487] For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to perform the role of a receiver device of the payment transaction by performing one or more operations of the method of Fig. 2(a)-2(c).[000488] In some demonstrative aspects, as indicated at block 205, the method my include initiating a transaction to be performed between a first wireless communication device performing a role of a first transactor, and a second wireless communication device performing a role of a second transactor.[000489] For example, the first transactor may include a sender, e.g., a payer. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to perform the role of the first transactor.[000490] For example, the second transactor may include a receiver, e.g., a payment receiver. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to perform the role of the second transactor.[000491] In some demonstrative aspects, as indicated at block 220, the method may include transmitting one or more first-transactor advertisement messages from the first wireless communication device to advertise the first wireless communication device is to perform a first transactor role for a transaction. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to transmit the one or more first- transactor advertisement messages, e.g., as described above.[000492] In some demonstrative aspects, as indicated at block 222, the method may include storing at the first wireless communication device first magnetometer data based on magnetometer information from a magnetometer of the first wireless communication device. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to store the magnetometer information from magnetic sensor 165 (Fig. 1), e.g., as described above.[000493] In some demonstrative aspects, as indicated at block 224, the method may include scanning at the first wireless communication device for one or more second-transactor advertisement messages from one or more second wireless communication devices. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to scan for the second-transactor advertisement messages from device 140 (Fig. 1) and / or one or more other devices, e.g., as described above.[000494] In some demonstrative aspects, as indicated by arrow 226, the method may include determining at the first wireless communication device a selected device from the one or moresecond wireless communication devices, for example, based on proximity-detection measurements corresponding to the one or more second-transactor advertisement messages. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to determine the selected device from the one or more second wireless communication devices, for example, based on proximity-detection measurements corresponding to the one or more second-transactor advertisement messages, e.g., as described above.[000495] In some demonstrative aspects, as indicated at block 210, the method may include transmitting one or more second-transactor advertisement messages from the second wireless communication device to advertise the second wireless communication device is to perform the second transactor role for the transaction. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to transmit the one or more second-transactor advertisement messages, e.g., as described above.[000496] In some demonstrative aspects, as indicated at block 212, the method may include storing at the second wireless communication device second magnetometer data based on magnetometer information from a magnetometer of the second wireless communication device. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to store the magnetometer information from magnetic sensor 166 (Fig. 1), e.g., as described above.[000497] In some demonstrative aspects, as indicated at block 214, the method may include scanning at the second wireless communication device for one or more first-transactor advertisement messages from one or more other wireless communication devices. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to scan for the first-transactor advertisement messages from device 102 (Fig. 1) and / or one or more other devices, e.g., as described above.[000498] In some demonstrative aspects, as indicated at block 230, the method may include communicating the second magnetometer data from the second wireless communication device to the first wireless communication device. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to read the second magnetometer data from the second wireless communication device, for example, based on a determination that the second wireless communication device is the selected device, e.g., as described above. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to send the second magnetometer data to the first wireless communication device, e.g., as described above.[000499] In some demonstrative aspects, as indicated at block 232, the method may include communicating detection information from the second wireless communication device to the first wireless communication device. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to read the detection information from the second wireless communication device, for example, based on a determination that the second wireless communication device is the selected device, e.g., as described above. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to send the detection information to the first wireless communication device, e.g., as described above.[000500] For example, as indicated at block 232, the detection information may identify one or more devices detected by the second wireless communication device based on based on the one or more first-transactor advertisement messages received by the second wireless communication device.[000501] For example, as indicated at block 232, the detection information may include a list of identifiers of the one or more devices detected by the second wireless communication device, e.g., as described above.[000502] In some demonstrative aspects, as indicated at block 234, the method may include determining at the first wireless communication device whether the selected device is to be validated to perform a second transactor role for the transaction, for example, based on the detection information from the second selected device, and the second magnetometer data from the second wireless communication device. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to determine whether the device 140 (Fig. 1) is to be validated to perform a second transactor role for the transaction, for example, based on the detection information from the device 140 (Fig. 1), the first magnetometer data stored at the device 102 (Fig. 1), and the second magnetometer data from the device 140 (Fig. 1), e.g., as described above.[000503] In some demonstrative aspects, as indicated at block 239, block 240 and block 242, the method may include exchanging transaction information of the transaction over a wireless communication link between the first wireless communication device and the selected device. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to exchange transaction information of the transaction over a wireless communication link between the device 102 (Fig. Fig. 1) and the device 140 (Fig. 1), for example, based on a determination that the device 140 (Fig. 1) is to be validated to perform the second transactor role, e.g., as described above. For example, user-end controller 161 (Fig. 1)may be configured to cause, trigger, and / or control device 140 (Fig. 1) to exchange transaction information of the transaction over a wireless communication link between the device 140 (Fig. 1) and the device 102 (Fig. 1), e.g., as described above.[000504] In some demonstrative aspects, as indicated at block 260, the method may include confirming by the first wireless communication device execution of the transaction with a server based on the transaction information. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to confirm execution of the transaction with server 199 (Fig. 1) based on the transaction information, e.g., as described above.[000505] In some demonstrative aspects, as indicated at block 250, the method may include confirming by the second wireless communication device execution of the transaction with a server based on the transaction information. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to confirm execution of the transaction with server 199 (Fig. 1) based on the transaction information, e.g., as described above.[000506] Referring back to Fig. 1, in some demonstrative aspects, user-end controller 160, user-end controller 161, and / or server-end controller 162 may be configured to implement one or more operations and / or functionalities of a security mechanism to secure one or more transactions, for example, one or more offline transactions, e.g., as described below.[000507] In some demonstrative aspects, a transaction, e.g., an offline transaction may be performed by two devices (also referred to as “client devices” or “user devices”), where one of the client devices is to perform the role of a payer, e.g., device 102, and another one of the client devices is to perform the role of a receiver, e.g., device 140.[000508] In some demonstrative aspects, a transaction, e.g., an offline transaction may be performed by the two client devices, for example, while at least one of the client devices, e.g., one of the client devices or both of the client devices, does not have an online connection with the server, e.g., when device 102 does not have an online connection with server 199, and / or when device 140 does not have an online connection with server 199.[000509] In some demonstrative aspects, the payer side of the transaction may select an amount of money to be transferred.[000510] In some demonstrative aspects, the client devices, e.g., device 102 and / or device 140, may establish a wireless communication connection, for example, a BT connection, e.g., as described above.[000511] In some demonstrative aspects, the client devices, e.g., device 102 and / or device 140, may exchange relevant transaction information for the payment transaction, for example, including the Client IDs, transaction IDS, and the amount, e.g., as described above.[000512] In some demonstrative aspects, the client devices, e.g., device 102 and / or device 140, may provide to the users of the client devices a success indication, e.g., via interface 110, for example, to indicate that the payment transaction is successful, for example, even before device 102 and / or device 140 confirm the transaction with server 199, e.g., as described below.[000513] In some demonstrative aspects, the client devices, e.g., device 102 and / or device 140, may provide to the users of the client devices a success indication, e.g., via interface 110, for example, to indicate that the payment transaction is successful, for example, even in case device 102 does not have an online connection with server 199, and / or device 140 does not have an online connection with server 199, e.g., as described below.[000514] In some demonstrative aspects, a client device, e.g., each of the two client devices, e.g., device 102 and / or device 140, may report the transaction to a server, e.g., server 199, for example, at a later time, e.g., when the client device has an online connection to the server.[000515] In some demonstrative aspects, user-end controller 160, user-end controller 161, and / or server-end controller 162 may be configured to implement one or more operations and / or functionalities of a security mechanism to secure one or more transactions, for example, to provide a technical solution to support trust between two clients, for example, when performing an offline transaction, e.g., as described below.[000516] In some demonstrative aspects, the security mechanism may be configured to provide a technical solution to support one side of the offline transaction to trust an authenticity, e.g., of a client ID, of an other side of the offline transaction, e.g., as described below.[000517] In some demonstrative aspects, the security mechanism may be configured to address a technical issue in case a payer side of the offline transaction “lies” about its ClientID. For example, when the receiver side of the offline transaction reports this transaction to the server, the server may have the wrong impression of who the payer is, e.g., even if the server believes the receiver.[000518] In some demonstrative aspects, user-end controller 160, user-end controller 161, and / or server-end controller 162 may be configured to implement one or more operations and / or functionalities of a security mechanism to secure one or more transactions, for example, to provide a technical solution to support a server, e.g., server 199, to trust a reported transaction reported by two clients, for example, devices 102 and 140, e.g., as described below.[000519] In some demonstrative aspects, the security mechanism may be configured to provide a technical solution to support a server, e.g., server 199, to trust an existence and / or details of a reported transaction, e.g., as described below.[000520] In one example, a server, e.g., server 199, may receive a transaction report from a payer, while no transaction report from the relevant receiver may be received by the server. In another example, a server, e.g., server 199, may receive a transaction report from a payer, and a transaction report from a receiver, which may have different transaction details, e.g., the amount of the transaction. In such cases, the server may be required to determine which side to believe.[000521] In some demonstrative aspects, the security mechanism may be configured to provide a technical solution to support a server, e.g., server 199, in detecting, avoiding and / or mitigating an attack attempt.[000522] In one example, a payer side may be an attacker. For example, the payer may attempt to get out of paying the receiver, or paying less than needed.[000523] In another example, a receiver side may be an attacker. For example, the receiver may attempt to fool the server into thinking that the receiver should receive money when no transaction is actually performed, or that the receiver should receive more money than actually transferred.[000524] In some demonstrative aspects, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to generate and / or maintain a private (secret) key (“private server key”) for the server 199, e.g., as described below.[000525] In some demonstrative aspects, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to generate and / or maintain a public (known) key (“public server key”) for the server 199, e.g., as described below.[000526] In some demonstrative aspects, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to provide the public server key to a user, e.g., of device 102 and / or device 140, for example, during a user registration process.[000527] In some demonstrative aspects, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to generate and / or maintain private and public keys for a user, e.g., of device 102 and / or device 140, e.g., for each user, e.g., as described below.[000528] In some demonstrative aspects, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to send the private and public keys of a user to the user, for example, during the user registration process.[000529] For example, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to send to device 102 the private and public keys of a user of device 102, for example, during the user registration process of the user of device 102.[000530] For example, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to send to device 140 the private and public keys of a user of device 140, for example, during the user registration process of the user of device 140.[000531] In some demonstrative aspects, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to generate a tuple (“key tuple”) corresponding to a user, e.g., each user, and to send the key tuple to the user, for example, during the user registration process, e.g., as described below.[000532] In some demonstrative aspects, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to generate a key tuple for a user including, for example, the tuple (User’s Public Key, UserID), e.g., including the public key assigned to the user and the user ID assigned to the user.[000533] In some demonstrative aspects, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to sign the key tuple for a specific user, for example, using the private sever key, and to send the signed key tuple to the specific user, for example, during the user registration process.[000534] For example, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to generate a key tuple for a user of device 102 including, for example, the tuple (User’s Public Key, UserID), e.g., including the public key assigned to the user and the user ID assigned to the user, to sign the key tuple of the user of device 102 using the private sever key of server 199, and to send to device 102 the signed key tuple of the user of device 102.[000535] For example, server-end controller 162 may be configured to trigger, cause, instruct and / or control server 199 to generate a key tuple for a user of device 140 including, for example, the tuple (User’s Public Key, UserID), e.g., including the public key assigned to the user and the user ID assigned to the user, to sign the key tuple of the user of device 140 using the private sever key of server 199, and to send to device 140 the signed key tuple of the user of device 140.[000536] In some demonstrative aspects, user-end controller 160 and / or user-end controller 161 may be configured to implement one or more operations and / or functionalities of an offline identify verification mechanism to verify an identify of a user, for example, based on the key tuple of the user, e.g., as described below.[000537] In some demonstrative aspects, user-end controller 160 may be configured to cause device 102 to perform a role of a payer device, and / or user-end controller 161 may be configured to cause device 140 to perform a role of a receiver device, for example, to verify the identity of the payer device, for example, according to one or more operations of the following offline payer identify verification mechanism:• The payer sends his (User's Public key, user ID) tuple to the receiver.• The payer tuple is signed by the server's Private key. Accordingly, the receiver may use the server's public key to read the tuple and thus verify its authenticity.• Although the receiver may trust that the tuple was created by the server, the receiver may not be able to trust the userID in the tuple actually belongs the user that the receiver is in session with.• Since the tuple is created by the server, the receiver may know that only the user corresponding to the userID in the tuple has the private key corresponding to the public key in the tuple.• The receiver may generate a random secret (challenge) and encrypt it using the tuple's public key. The receiver may then send the encrypted random secret (encrypted string) as a challenge to the payer.• Only if the payer is truly the user identified by the userID in the tuple, will the payer have the corresponding private key and be able to complete proper decryption of the encrypted string.• The payer may decrypt the encrypted string, and may send the decrypted string back to the receiver.• Upon receipt of the correct decrypted string, the receiver may be able to trust the identity of the payer, e.g., to trust that the userID in the tuple from the payer is the actual identifier of the payer.[000538] In some demonstrative aspects, user-end controller 161 may be configured to cause device 140 to perform a role of a receiver device and / or user-end controller 160 may be configured to cause device 102 to perform a role of a payer device, for example, to verify theidentity of the receiver device, for example, according to one or more operations of the following offline receiver identify verification mechanism:• The receiver sends his (User's Public key, user ID) tuple to the payer.• The receiver tuple is signed by the server's Private key. Accordingly, the payer may use the server's public key to read the tuple and thus verifies its authenticity.• Although the payer may trust that the tuple was created by the server, the payer may not be able to trust the userID in the tuple actually belongs the user that the payer is in session with.• Since the tuple is created by the server, the payer may know that only the user corresponding to the userID in the tuple has the private key corresponding to the public key in the tuple.• The payer may generate a random secret (challenge) and encrypt it using the tuple's public key. The payer may then send the encrypted random secret (encrypted string) as a challenge to the receiver.• Only if the receiver is truly the user identified by the userID in the tuple, will the receiver have the corresponding private key and be able to complete proper decryption of the encrypted string.• The receiver may decrypt the encrypted string, and may send the decrypted string back to the payer.• Upon receipt of the correct decrypted string, the payer may be able to trust the identity of the receiver, e.g., to trust that the userID in the tuple from the receiver is the actual identifier of the receiver.[000539] In some demonstrative aspects, user-end controller 160 may be configured to allow device 102 to exchange with the receiver device, e.g., device 140, information of the transaction, e.g., as described above, for example, based on a determination that the receiver identify verification is successful.[000540] In some demonstrative aspects, user-end controller 161 may be configured to allow device 140 to exchange with the payer device, e.g., device 102, information of the transaction, e.g., as described above, for example, based on a determination that the payer identify verification is successful.[000541] In some demonstrative aspects, user-end controller 160 and / or user-end controller 161 may be configured to implement one or more operations and / or functionalities of an offlinesignature validation mechanism to validate a signature of a user, for example, on a transaction message received from the user, e.g., as described below.[000542] In some demonstrative aspects, user-end controller 160 may be configured to cause device 102 to perform a role of a payer device, and / or user-end controller 161 may be configured to cause device 140 to perform a role of a receiver device, for example, to validate a signature of the payer device on a transaction message from the payer device (“the payer transaction message”), for example, according to one or more operations of the following offline signature validation mechanism:• The payer may generate a signature of transaction data of a payment transaction, for example, by signing the transaction data using the private key of the payer. For example, the payer may use the private key of the payer to sign transaction data of the transaction, e.g., the entirety of the transaction data, for example, after the payer has exchanged the data, and before finalizing the transaction and / or showing a success indication to the user. For example, the payer may send the signature to the receiver.• The receiver may verify the payer's signature of the transaction data, for example, using the payer's verified public key from the key tuple of the payer.[000543] In some demonstrative aspects, user-end controller 161 may be configured to cause device 140 to perform a role of a receiver device, and / or user-end controller 160 may be configured to cause device 102 to perform a role of a payer device, for example, to validate a signature of the receiver device on a transaction message from the receiver device (“the receiver transaction message”), for example, according to one or more operations of the following offline signature validation mechanism:• The receiver may generate a signature of transaction data of a payment transaction, for example, by signing the transaction data using the private key of the receiver. For example, the receiver may use the private key of the receiver to sign transaction data of the transaction, e.g., the entirety of the transaction data, for example, after the receiver has exchanged the data, and before finalizing the transaction and / or showing a success indication to the user. For example, the receiver may send the signature to the payer.• The payer may verify the receivers signature of the transaction data, for example, using the receiver's verified public key from the key tuple of the receiver.[000544] In some demonstrative aspects, user-end controller 160 may be configured to determine that the payment transaction has been successfully finalized, for example, based ona determination that the signed transaction message from the receiver device has been successfully verified. For example, user-end controller 160 may be configured to allow device 102 to provide a success message to the user of device 102, e.g., to indicate success of the payment transaction.[000545] In some demonstrative aspects, user-end controller 161 may be configured to determine that the payment transaction has been successfully finalized, for example, based on a determination that the signed transaction message from the payer device has been successfully verified. For example, user-end controller 161 may be configured to allow device 140 to provide a success message to the user of device 140, e.g., to indicate success of the payment transaction. [000546] In some demonstrative aspects, user-end controller 160, user-end controller 161, and / or server-end controller 162 may be configured to implement one or more operations and / or functionalities of a signature validation mechanism to support server 199 in validating the signed payer transaction and / or the signed receiver transaction, e.g., as described below.[000547] In some demonstrative aspects, user-end controller 161 may be configured to cause device 140 to report the payment transaction to server 199, for example, via an online connection between device 140 and the server 199, e.g., when the device 140 “goes online”.[000548] In some demonstrative aspects, user-end controller 161 may be configured to cause device 140 to send to the server 199 the signed transaction, e.g., as received from the payer device and validated by the receiver device.[000549] In some demonstrative aspects, user-end controller 160 may be configured to cause device 102 to report the payment transaction to server 199, for example, via an online connection between device 102 and the server 199, e.g., when the device 102 “goes online”.[000550] In some demonstrative aspects, user-end controller 160 may be configured to cause device 102 to send to the server 199 the signed transaction, e.g., as received from the receiver device and validated by the payer device.[000551] For example, a participant of the payment transaction (“the reporting participant”), e.g., the receiver, may go online and report the transaction to the server 199. For example, the reporting participant may send to the server 199 the transaction data and the signature (“the reported signed transaction message”) for the transaction created by the other participant of the transaction, e.g., the payer.[000552] In some demonstrative aspects, server-end controller 162 may be configured to cause server 199 to verify the signature of the reported signed transaction message received from the reporting participant, e.g., using the public key of the other participant of the transaction.[000553] For example, server-end controller 162 may be configured to cause server 199 to verify the transaction message signed by the payer and reported by the receiver, e.g., using the public key of the payer.[000554] For example, server-end controller 162 may be configured to cause server 199 to verify the transaction message signed by the receiver and reported by the payer, e.g., using the public key of the receiver.[000555] In some demonstrative aspects, the server 199, which may hold the public keys of the registered users, e.g., all public keys for all users, may be configured to verify the signature of the reported signed transaction message.[000556] In some demonstrative aspects, server-end controller 162 may be configured to determine that the reported transaction should be trusted as accurate and real, for example, based on a determination that the signature of the reported signed transaction message is successfully verified.[000557] In some demonstrative aspects, server-end controller 162 may be allowed to trust that the reported transaction is accurate and real based on the verification of the reported signed transaction message received from the reporting participant, e.g., the receiver, for example, even in case the server 199 has not received a transaction report from the other participant of the transaction, e.g., the payer.[000558] In some demonstrative aspects, server-end controller 162 may be allowed to trust that the reported transaction is accurate and real based on the verification of the reported signed transaction message received from the reporting participant, e.g., the receiver, for example, even in case the server 199 has received a transaction report including different transaction details from the other participant of the transaction, e.g., the payer.[000559] In some demonstrative aspects, the reported signed transaction message received from the reporting participant, e.g., the receiver, may be trusted as accurate and real, for example, since it may be assumed that the reporting device, e.g., the receiver, would have no way of correctly signing the reported signed transaction message, e.g., without having the secret key of the other participant of the transaction, e.g., the payer’s secret key.[000560] In some demonstrative aspects, user-end controller 160, user-end controller 161, and / or server-end controller 162 may be configured to implement one or more operations and / or functionalities of the security mechanism, e.g., as described above, for example, to provide a technical solution, which may protect against, and / or may be safe from, an attacker replayinganother user's tuple, e.g., as the attacker will not be able to decrypt the random secret (challenge).[000561] In some demonstrative aspects, user-end controller 160, user-end controller 161, and / or server-end controller 162 may be configured to implement one or more operations and / or functionalities of the security mechanism, e.g., as described above, for example, to provide a technical solution, which may protect against, and / or may be safe from, an attack, e.g., a Man- in-the-middle (MITM) attack, which may include reporting non-existent transactions, and / or manipulating transaction details.[000562] In one example, some wireless communication protocols, e.g., BLE, may be vulnerable to such an attack. For example, the security mechanism, e.g., as described above, may be implemented to provide a technical solution, which may protect against and / or may be safe from, such attacks, for example, as an attacker may not be able to sign fraudulent transaction details with the secret key of the other participant.[000563] In some demonstrative aspects, user-end controller 160, user-end controller 161, and / or server-end controller 162 may be configured to implement one or more operations and / or functionalities of the security mechanism, e.g., as described above, for example, to provide a technical solution, which may support server 199 in determining the validity of a transaction, for example, even if the transaction is reported by only one of the participants of the transaction. For example, this may be achieved by having the report of one side of the transaction, e.g., each side, signed by the other side of the transaction, e.g., as described above.[000564] For example, the security mechanism, e.g., as described above, may be implemented to provide a technical solution, which may make a single report trusted. Accordingly, the security mechanism, e.g., as described above, may be implemented to provide a technical solution, which may be safe from a situation where one side of the transaction does not report the transaction.[000565] Reference is made to Fig. 3, which schematically illustrates a sequence diagram of operations and communications between a first wireless communication device, a second wireless communication device, an a server 399, in accordance with some demonstrative aspects.[000566] In some demonstrative aspects, as shown in Fig. 3, the first wireless communication device may perform a role of a payer 302 of a transaction, and the second wireless communication device may perform a role of a payment receiver (receiver) 340 of the transaction, e.g., as described above.[000567] For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to perform one or more operations and / or functionalities of the payer device 302.[000568] For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to perform one or more operations and / or functionalities of the receiver device 340.[000569] For example, server-end controller 162 (Fig. 1) may be configured to cause, trigger, and / or control server 199 (Fig. 1) to perform one or more operations and / or functionalities of the server 399.[000570] In some demonstrative aspects, as indicated by arrow 310, the server 399 may send security information to receiver 340, for example, based on registration of the receiver 340 with the server 399. For example, server-end controller 162 (Fig. 1) may be configured to cause, trigger, and / or control server 199 (Fig. 1) to send the security information to device 140 (Fig 1), for example, based on registration of the user of device 140 (Fig. 1) with the server 199 (Fig. 1), e.g., as described above. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to store the security information, e.g., as described above.[000571] For example, as indicated by arrow 310, the security information may include a user public key corresponding to receiver 340, a user secret key corresponding to receiver 340, and a signed user information tuple corresponding to the receiver 340, e.g., as described above. For example, the signed user information tuple corresponding to the receiver 340 may include user identification information to identify the receiver 340, and the user public key corresponding to the receiver 340, e.g., as described above. For example, the signed user information tuple corresponding to the receiver 340 may be signed by the server 399, e.g., using a secret key of the server 399, e.g., as described above.[000572] In some demonstrative aspects, as indicated by arrow 312, the payer 302 may send to the receiver 340 signed user information corresponding to the payer 302, e.g., in the form of a tuple, which may include the public key assigned to the payer 302 and the user identification (userID) information corresponding to the payer 302, e.g., as described above. For example, the signed user information corresponding to the payer 302 may include the tuple signed by the server 399, e.g., based on the secret key of the server 399, e.g., as described above.[000573] In some demonstrative aspects, the receiver 340 may verify the signature of the tuple from the payer 302, for example, based on a public key of the server 399, e.g., as described above.[000574] In some demonstrative aspects, as indicated by arrow 314, the receiver 340 may send to the payer 302 an encrypted challenge. For example, the encrypted challenge may include challenge information encrypted according to the public key of the payer 302, e.g., as described above.[000575] In some demonstrative aspects, as indicated by arrow 316, payer 302 may decrypt the encrypted challenge, for example, based on the private key of the payer 302, e.g., as described above.[000576] In some demonstrative aspects, as indicated by arrow 316, payer 302 may send to the receiver 340 a response, which may be based on the decrypted challenge, as described above.[000577] In some demonstrative aspects, as indicated by arrow 316, receiver 340 may verify the user identification information of the payer 302, for example, based on a determination that the response from the payer 302 is based on the challenge information in the encrypted challenge, e.g., as described above.[000578] In some demonstrative aspects, as indicated by arrow 318, payer 302 and receiver 340 may exchange transaction information of the transaction over a wireless communication link, e.g., a BLE link, between the payer 302 and the receiver 340, e.g., as described above.[000579] In some demonstrative aspects, as indicated by arrow 320, the payer 302 may use the private key of the payer 302 to sign transaction data sent from the payer 302 to the receiver 340, and the receiver 340 may verify the signature of the payer 302, for example, based on the public key of the payer 302, e.g., as described above.[000580] In some demonstrative aspects, as indicated by arrow 322, the receiver 340 may confirm execution of the transaction with the server 399, for example, based on the transaction information, e.g., as described above. For example, the receiver 340 may send the signed transaction data from the payer 302, e.g., which may be signed by the payer 302, to the server 399. For example, the server 399 may verify the signature of the payer 302 on the transaction information, for example, based on the public key of the payer 302, e.g., as described above.[000581] Reference is made to Fig. 4, which schematically illustrates a sequence diagram of operations and communications between a first wireless communication device, a second wireless communication device, an a server 499, in accordance with some demonstrative aspects.[000582] In some demonstrative aspects, as shown in Fig. 4, the first wireless communication device may perform a role of a payer 402 of a transaction, and the second wireless communication device may perform a role of a payment receiver (receiver) 440 of the transaction, e.g., as described above.[000583] For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to perform one or more operations and / or functionalities of the payer device 402.[000584] For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to perform one or more operations and / or functionalities of the receiver device 440.[000585] For example, server-end controller 162 (Fig. 1) may be configured to cause, trigger, and / or control server 199 (Fig. 1) to perform one or more operations and / or functionalities of the server 499.[000586] In some demonstrative aspects, as indicated by arrow 410, the server 499 may send security information to payer 402, for example, based on registration of the payer 402 with the server 499. For example, server-end controller 162 (Fig. 1) may be configured to cause, trigger, and / or control server 199 (Fig. 1) to send the security information to device 102 (Fig 1), for example, based on registration of the user of device 102 (Fig. 1) with the server 199 (Fig. 1), e.g., as described above. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to store the security information, e.g., as described above.[000587] For example, as indicated by arrow 410, the security information may include a user public key corresponding to payer 402, a user secret key corresponding to payer 402, and a signed user information tuple corresponding to the payer 402, e.g., as described above. For example, the signed user information tuple corresponding to the payer 402 may include user identification information to identify the payer 402, and the user public key corresponding to the payer 402, e.g., as described above. For example, the signed user information tuple corresponding to the payer 402 may be signed by the server 499, e.g., using a secret key of the server 499, e.g., as described above.[000588] In some demonstrative aspects, as indicated by arrow 412, the receiver 440 may send to the payer 402 signed user information corresponding to the receiver 440, e.g., in the form of a tuple, which may include the public key assigned to the receiver 440 and the user identification (userID) information corresponding to the receiver 440, e.g., as described above. For example,the signed user information corresponding to the receiver 440 may include the tuple signed by the server 499, e.g., based on the secret key of the server 499, e.g., as described above.[000589] In some demonstrative aspects, the payer 402 may verify the signature of the tuple from the receiver 440, for example, based on a public key of the server 499, e.g., as described above.[000590] In some demonstrative aspects, as indicated by arrow 414, the payer 402 may send to the receiver 440 an encrypted challenge. For example, the encrypted challenge may include challenge information encrypted according to the public key of the receiver 440, e.g., as described above.[000591] In some demonstrative aspects, as indicated by arrow 416, receiver 440 may decrypt the encrypted challenge, for example, based on the private key of the receiver 440, e.g., as described above.[000592] In some demonstrative aspects, as indicated by arrow 416, receiver 440 may send to the payer 402 a response, which may be based on the decrypted challenge, as described above. [000593] In some demonstrative aspects, as indicated by arrow 416, payer 402 may verify the user identification information of the receiver 440, for example, based on a determination that the response from the receiver 440 is based on the challenge information in the encrypted challenge, e.g., as described above.[000594] In some demonstrative aspects, as indicated by arrow 418, receiver 440 and payer 402 may exchange transaction information of the transaction over a wireless communication link, e.g., a BLE link, between the payer 402 and the receiver 440, e.g., as described above.[000595] In some demonstrative aspects, as indicated by arrow 420, the receiver 440 may use the private key of the receiver 440 to sign transaction data sent from the receiver 440 to the payer 402, and the payer 402 may verify the signature of the receiver 440, for example, based on the public key of the receiver 440, e.g., as described above.[000596] In some demonstrative aspects, as indicated by arrow 422, the payer 402 may confirm execution of the transaction with the server 499, for example, based on the transaction information, e.g., as described above. For example, the payer 402 may send the signed transaction data from the receiver 440, e.g., which may be signed by the receiver 440, to the server 499. For example, the server 499 may verify the signature of the receiver 440 on the transaction information, for example, based on the public key of the receiver 440, e.g., as described above.[000597] Reference is made to Fig. 5, which schematically illustrates a method of executing a transaction based on wireless-based proximity detection, in accordance with some demonstrative aspects. For example, one or more of the operations of the method of Fig. 5 may be performed by one or more elements of a system, e.g., system 100 (Fig. 1), for example, one or more wireless devices, e.g., device 102 (Fig. 1), device 140 (Fig. 1), a server, e.g., server 199 (Fig. 1), and / or a controller, e.g., user-end controller 160 (Fig. 1), user-end controller 161 (Fig. 1), and / or server-end controller 162 (Fig. 1).[000598] As indicated at block 502, the method may include transmitting one or more first- transactor advertisement messages from a first wireless communication device to advertise the first wireless communication device is to perform a first transactor role for a transaction. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to transmit one or more first-transactor advertisement messages to advertise the device 102 (Fig. 1) is to perform a first transactor role for a transaction, e.g., as described above.[000599] As indicated at block 504, the method may include scanning for one or more second- transactor advertisement messages from one or more second wireless communication devices. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to scan for one or more second-transactor advertisement messages from one or more second wireless communication devices, e.g., as described above.[000600] As indicated at block 506, the method may include determining a selected device from the one or more second wireless communication devices based on proximity-detection measurements corresponding to the one or more second-transactor advertisement messages. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to determine a selected device, e.g., device 140, from the one or more second wireless communication devices, for example, based on proximity-detection measurements corresponding to the one or more second-transactor advertisement messages, e.g., as described above.[000601] As indicated at block 508, the method may include processing detection information from the selected device to determine whether the selected device is to be validated to perform a second transactor role for the transaction. For example, the detection information from the selected device may be based on one or more devices detected by the selected device. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) to process detection information from the device 140 (Fig. 1) to determine whether the device 140 (Fig. 1) is to be validated to perform a second transactor role for thetransaction. For example, the detection information from the device 140 (Fig. 1) may be based on one or more devices detected by the device 140 (Fig. 1), e.g., as described above.[000602] As indicated at block 510, the method may include exchanging transaction information of the transaction over a wireless communication link between the first wireless communication device and the selected device, for example, based on a determination that the selected device is to be validated to perform the second transactor role. For example, user-end controller 160 (Fig. 1) may be configured to cause, trigger, and / or control device 102 (Fig. 1) exchange transaction information of the transaction over a wireless communication link between the device 102 (Fig. 1) and the device 140 (Fig. 1), for example, based on a determination that the device 140 (Fig. 1) is to be validated to perform the second transactor role, e.g., as described above.[000603] Reference is made to Fig. 6, which schematically illustrates a method of executing a transaction based on wireless-based proximity detection, in accordance with some demonstrative aspects. For example, one or more of the operations of the method of Fig. 6 may be performed by one or more elements of a system, e.g., system 100 (Fig. 1), for example, one or more wireless devices, e.g., device 102 (Fig. 1), device 140 (Fig. 1), a server, e.g., server 199 (Fig. 1), and / or a controller, e.g., user-end controller 160 (Fig. 1), user-end controller 161 (Fig. 1), and / or server-end controller 162 (Fig. 1).[000604] As indicated at block 602, the method may transmitting one or more second- transactor advertisement messages from a first wireless communication device to advertise the first wireless communication device is to perform a second transactor role for a transaction. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to transmit one or more second-transactor advertisement messages to advertise the device 140 (Fig. 1) is to perform a second transactor role for a transaction, e.g., as described above.[000605] As indicated at block 604, the method may scanning for one or more first-transactor advertisement messages from one or more second wireless communication devices. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to scan for one or more first-transactor advertisement messages from one or more second wireless communication devices, for example, including the device 102 (Fig. 1), e.g., as described above.[000606] As indicated at block 608, the method may generating detection information based on one or more detected devices to perform a first transactor role, the one or more detected devices determined based on proximity-detection measurements corresponding to the one ormore first-transactor advertisement messages. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to generate the detection information, for example, based on one or more detected devices to perform a first transactor role. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to determine the one or more detected devices, for example, based on proximity-detection measurements corresponding to the one or more first-transactor advertisement messages, e.g., as described above.[000607] As indicated at block 610, the method may sending the detection information to a second wireless communication device of the one or more second wireless communication devices. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to send the detection information to device 102 (Fig. 1), e.g., as described above.[000608] As indicated at block 612, the method may exchanging transaction information of the transaction over a wireless communication link between the first wireless communication device and the second wireless communication device. For example, user-end controller 161 (Fig. 1) may be configured to cause, trigger, and / or control device 140 (Fig. 1) to exchange transaction information of the transaction over a wireless communication link between the device 140 (Fig. 1) and the device 102 (Fig. 1), e.g., as described above.[000609] Reference is made to Fig. 7, which schematically illustrates a product of manufacture 700, in accordance with some demonstrative aspects. Product 700 may include one or more tangible computer-readable (“machine-readable”) non-transitory storage media 702, which may include computer-executable instructions, e.g., implemented by logic 704, operable to, when executed by at least one computer processor, enable the at least one computer processor to implement one or more operations at device 102 (Fig. 1), device 140 (Fig. 1), server 199 (Fig. 1), user-end controller 160 (Fig. 1), user-end controller 161 (Fig. 1), and / or server-end controller 162 (Fig. 1); to cause device 102 (Fig. 1), device 140 (Fig. 1), server 199 (Fig. 1), user-end controller 160 (Fig. 1), user-end controller 161 (Fig. 1), and / or server-end controller 162 (Fig. 1) to perform, trigger and / or implement one or more operations and / or functionalities; and / or to perform, trigger and / or implement one or more operations and / or functionalities described with reference to the Figs. 1-6, and / or one or more operations described herein. The phrases “non- transitory machine -readable medium” and “computer-readable non-transitory storage media” may be directed to include all machine and / or computer readable media, with the sole exception being a transitory propagating signal.[000610] In some demonstrative aspects, product 700 and / or machine readable storage media 702 may include one or more types of computer-readable storage media capable of storing data, including volatile memory, non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writeable or re-writeable memory, and the like. For example, machine readable storage media 702 may include, RAM, DRAM, Double-Data-Rate DRAM (DDR-DRAM), SDRAM, static RAM (SRAM), ROM, programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory (e.g., NOR or NAND flash memory), content addressable memory (CAM), polymer memory, phase-change memory, ferroelectric memory, silicon-oxide-nitride-oxide-silicon (SONOS) memory, a hard drive, an optical disk, a magnetic disk, and the like. The computer- readable storage media may include any suitable media involved with downloading or transferring a computer program from a remote computer to a requesting computer carried by data signals embodied in a carrier wave or other propagation medium through a communication link, e.g., a modem, radio or network connection.[000611] In some demonstrative aspects, logic 704 may include instructions, data, and / or code, which, if executed by a machine, may cause the machine to perform a method, process and / or operations as described herein. The machine may include, for example, any suitable processing platform, computing platform, computing device, processing device, computing system, processing system, computer, processor, or the like, and may be implemented using any suitable combination of hardware, software, firmware, and the like.[000612] In some demonstrative aspects, logic 704 may include, or may be implemented as, software, a software module, an application, a program, a subroutine, instructions, an instruction set, computing code, words, values, symbols, and the like. The instructions may include any suitable type of code, such as source code, compiled code, interpreted code, executable code, static code, dynamic code, and the like. The instructions may be implemented according to a predefined computer language, manner or syntax, for instructing a processor to perform a certain function. The instructions may be implemented using any suitable high-level, low-level, object-oriented, visual, compiled and / or interpreted programming language, machine code, and the like.EXAMPLES[000613] The following examples pertain to further aspects.[000614] Example 1 includes a product comprising one or more tangible computer-readable non-transitory storage media comprising instructions operable to, when executed by at least one processor, enable the at least one processor to cause a first wireless communication device totransmit one or more first-transactor advertisement messages to advertise the first wireless communication device is to perform a first transactor role for a transaction; scan for one or more second-transactor advertisement messages from one or more second wireless communication devices; determine a selected device from the one or more second wireless communication devices based on proximity-detection measurements corresponding to the one or more second- transactor advertisement messages; process detection information from the selected device to determine whether the selected device is to be validated to perform a second transactor role for the transaction, wherein the detection information from the selected device is based on one or more devices detected by the selected device; and based on a determination that the selected device is to be validated to perform the second transactor role, exchange transaction information of the transaction over a wireless communication link between the first wireless communication device and the selected device.[000615] Example 2 includes the subject matter of Example 1, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine whether the selected device is to be validated to perform the second transactor role based on a determination whether the detection information from the selected device indicates that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages.[000616] Example 3 includes the subject matter of Example 2, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine that the selected device is to be validated to perform the second transactor role based on a determination that the detection information from the selected device indicates that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages.[000617] Example 4 includes the subject matter of Example 3, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine that the selected device is not to be validated to perform the second transactor role based on a determination that the detection information from the selected device does not indicate that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages.[000618] Example 5 includes the subject matter of any one of Examples 1-4, and optionally, wherein the detection information from the selected device identifies the one or more devices detected by the selected device.[000619] Example 6 includes the subject matter of any one of Examples 1-5, and optionally, wherein the detection information from the selected device comprises an indication on whether the selected device acknowledges the first wireless communication device as the first transactor for the transaction.[000620] Example 7 includes the subject matter of any one of Examples 1-6, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine one or more candidate devices based on a candidate-detection criterion applied to the proximity-detection measurements corresponding to the one or more second-transactor advertisement messages; and determine the selected device based on the one or more candidate devices.[000621] Example 8 includes the subject matter of Example 7, and optionally, wherein the instructions, when executed, cause the first wireless communication device to identify the selected device from the one or more candidate devices based on proximity-detection measurements corresponding to the one or more candidate devices.[000622] Example 9 includes the subject matter of Example 7 or 8, and optionally, wherein the instructions, when executed, cause the first wireless communication device to identify the selected device from the one or more candidate devices based on an input from a user of the first wireless communication device.[000623] Example 10 includes the subject matter of any one of Examples 7-9, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine whether a second wireless communication device is to be identified as a candidate device based on a comparison between a proximity-detection measurement corresponding to a second-transactor advertisement message from the second wireless communication device and a proximity-detection threshold.[000624] Example 11 includes the subject matter of Example 10, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on information in the second-transactor advertisement message from the second wireless communication device.[000625] Example 12 includes the subject matter of Example 10 or 11, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on device identification information in the second- transactor advertisement message from the second wireless communication device.[000626] Example 13 includes the subject matter of any one of Examples 10-12, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on Transmit (Tx) power information in the second-transactor advertisement message from the second wireless communication device.[000627] Example 14 includes the subject matter of any one of Examples 10-13, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on threshold information in the second-transactor advertisement message from the second wireless communication device.[000628] Example 15 includes the subject matter of any one of Examples 10-14, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on a device type of the second wireless communication device.[000629] Example 16 includes the subject matter of any one of Examples 10-15, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 40 centimeters.[000630] Example 17 includes the subject matter of any one of Examples 10-16, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 30 centimeters.[000631] Example 18 includes the subject matter of any one of Examples 10-17, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 20 centimeters.[000632] Example 19 includes the subject matter of any one of Examples 10-18, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 10 centimeters.[000633] Example 20 includes the subject matter of any one of Examples 10-19, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 5 centimeters.[000634] Example 21 includes the subject matter of any one of Examples 10-20, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 2 centimeters.[000635] Example 22 includes the subject matter of any one of Examples 10-21, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 1 centimeter.[000636] Example 23 includes the subject matter of any one of Examples 10-22, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine that the second wireless communication device is to be identified as the candidate device based on a determination that the proximity-detection measurement corresponding to the second-transactor advertisement message from the second wireless communication device exceeds the proximity-detection threshold.[000637] Example 24 includes the subject matter of any one of Examples 10-23, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine that the second wireless communication device is not to be identified as the candidate device based on a determination that the proximity-detection measurement corresponding to the second-transactor advertisement message from the second wireless communication device does not exceed the proximity-detection threshold.[000638] Example 25 includes the subject matter of any one of Examples 1-24, and optionally, wherein the instructions, when executed, cause the first wireless communication device to perform the proximity-detection measurements comprising received power measurements corresponding to the one or more second-transactor advertisement messages.[000639] Example 26 includes the subject matter of any one of Examples 1-25, and optionally, wherein the instructions, when executed, cause the first wireless communication device to perform the proximity-detection measurements comprising Received Signal Strength Indicator (RSSI) measurements corresponding to the one or more second-transactor advertisement messages.[000640] Example 27 includes the subject matter of any one of Examples 1-26, and optionally, wherein the instructions, when executed, cause the first wireless communication device to store first sensor data based on sensor information from one or more sensors of the first wireless communication device; receive second sensor information from the selected device; and determine whether the selected device is to be validated to perform the second transactor role based on the detection information from the selected device, the first sensor data, and the second sensor data.[000641] Example 28 includes the subject matter of Example 27, and optionally, wherein the first sensor data comprises first magnetic-field data from a magnetic-field sensor of the firstwireless communication device, wherein the second sensor information comprises second magnetic-field data from the selected device.[000642] Example 29 includes the subject matter of Example 28, and optionally, wherein the first magnetic-field data comprises a plurality of magnetic-field measurements, and a plurality of time-stamps corresponding to the plurality of magnetic-field measurements.[000643] Example 30 includes the subject matter of any one of Examples 27-29, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine whether a close-proximity event is detected based on the first sensor data and the second sensor data; and determine whether the selected device is to be validated to perform the second transactor role based on whether the close-proximity event is detected based on the first sensor data and the second sensor data.[000644] Example 31 includes the subject matter of Example 30, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine whether the close-proximity event is detected based on a correlation between the first sensor data and the second sensor data.[000645] Example 32 includes the subject matter of Example 30 or 31 , and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine whether the close-proximity event is detected based on a first event timing and a second event timing, the first event timing comprises a first timing of a first event detection based on the first sensor data, the second event timing comprises a second timing of a second event detection based on the second sensor data.[000646] Example 33 includes the subject matter of Example 32, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine that the close-proximity event is detected based on a determination that a time difference between the first event timing and the second event timing does not exceed a predefined time threshold. [000647] Example 34 includes the subject matter of any one of Examples 30-33, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine that the selected device is to be validated to perform the second transactor role based on a determination that the detection information from the selected device indicates that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages, and a determination that the close-proximity event is detected based on the first sensor data and the second sensor data.[000648] Example 35 includes the subject matter of any one of Examples 30-34, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine that the selected device is not to be validated to perform the second transactor role based on at least one of a determination that the detection information from the selected device does not indicate that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages, or a determination that the close-proximity event is not detected based on the first sensor data and the second sensor data.[000649] Example 36 includes the subject matter of any one of Examples 30-35, and optionally, wherein the close-proximity event comprises a distance of no more than 10 centimeters between the first wireless communication device and the selected device.[000650] Example 37 includes the subject matter of any one of Examples 30-36, and optionally, wherein the close-proximity event comprises a distance of no more than 5 centimeters between the first wireless communication device and the selected device.[000651] Example 38 includes the subject matter of any one of Examples 30-37, and optionally, wherein the close-proximity event comprises a distance of no more than 3 centimeters between the first wireless communication device and the selected device.[000652] Example 39 includes the subject matter of any one of Examples 30-38, and optionally, wherein the close-proximity event comprises a distance of no more than 2 centimeters between the first wireless communication device and the selected device.[000653] Example 40 includes the subject matter of any one of Examples 30-39, and optionally, wherein the close-proximity event comprises a distance of no more than 1 centimeters between the first wireless communication device and the selected device.[000654] Example 41 includes the subject matter of any one of Examples 30-40, and optionally, wherein the close-proximity event comprises a distance of no more than 0.5 centimeters between the first wireless communication device and the selected device.[000655] Example 42 includes the subject matter of any one of Examples 30-41, and optionally, wherein the close-proximity event comprises a touch event comprising contact between the first wireless communication device and the selected device.[000656] Example 43 includes the subject matter of any one of Examples 27-42, and optionally, wherein the first sensor data comprises at least one of accelerometer data from an accelerometer of the first wireless communication device, light data from a light sensor of the first wireless communication device, acoustic data from an acoustic sensor of the first wirelesscommunication device, vibration data from a vibration sensor of the first wireless communication device, or image data from an image sensor of the first wireless communication device.[000657] Example 44 includes the subject matter of any one of Examples 1-43, and optionally, wherein the instructions, when executed, cause the first wireless communication device to verify authenticity of a signed user information tuple from the selected device based on a server public key from a server, wherein the signed user information tuple comprises user identification information to identify a user of the selected device and a user public key corresponding to the user of the selected device; send a challenge message to the selected device, the challenge message comprising challenge information encrypted according to the user public key corresponding to the user of the selected device; and verify the user identification information based on a determination that a response from the selected device is based on the challenge information.[000658] Example 45 includes the subject matter of Example 44, and optionally, wherein the instructions, when executed, cause the first wireless communication device to verify signed transaction information from the selected device based on the user public key corresponding to the user of the selected device.[000659] Example 46 includes the subject matter of Example 45, and optionally, wherein the instructions, when executed, cause the first wireless communication device to send the signed transaction information from the selected device to the server.[000660] Example 47 includes the subject matter of any one of Examples 1-46, and optionally, wherein the instructions, when executed, cause the first wireless communication device to store security information corresponding to a user of the first wireless communication device, the security information comprising a user public key corresponding to the user of the first wireless communication device, a user secret key corresponding to the user of the first wireless communication device, and a signed user information tuple corresponding to the user of the first wireless communication device, wherein the signed user information tuple comprises user identification information to identify the user of the first wireless communication device and the user public key corresponding to the user of the first wireless communication device; send the signed user information tuple corresponding to the user of the first wireless communication device to the selected device; process a challenge message from the selected device to decrypt challenge information according to the user secret key corresponding to the user of the first wireless communication device; and send to the selected device a response based on the challenge information.[000661] Example 48 includes the subject matter of Example 47, and optionally, wherein the instructions, when executed, cause the first wireless communication device to send signed transaction information to the selected device, the signed transaction information signed based on the user secret key corresponding to the user of the first wireless communication device.[000662] Example 49 includes the subject matter of any one of Examples 1-48, and optionally, wherein the transaction information comprises first user identification information to identify a user of the first wireless communication device, second user identification information to identify a user of the selected device, one or more transaction identifiers, and a transaction amount.[000663] Example 50 includes the subject matter of any one of Examples 1-49, and optionally, wherein the instructions, when executed, cause the first wireless communication device to confirm execution of the transaction with a server based on the transaction information.[000664] Example 51 includes the subject matter of any one of Examples 1-50, and optionally, wherein a first-transactor advertisement message of the one or more first-transactor advertisement messages comprises user identification information, and a role identifier, the user identification information configured to uniquely identify the first wireless communication device for a transaction service, the role identifier set to a predefined role identifier setting to identify that the first wireless communication device is to perform the first transactor role.[000665] Example 52 includes the subject matter of any one of Examples 1-51, and optionally, wherein a first-transactor advertisement message of the one or more first-transactor advertisement messages comprises device type information to identify a type of the first wireless communication device.[000666] Example 53 includes the subject matter of any one of Examples 1-52, and optionally, wherein a first-transactor advertisement message of the one or more first-transactor advertisement messages comprises proximity-detection threshold information to identify a proximity-detection threshold to be applied to a proximity-detection measurement corresponding to the first-transactor advertisement message.[000667] Example 54 includes the subject matter of any one of Examples 1-53, and optionally, wherein a first-transactor advertisement message of the one or more first-transactor advertisement messages comprises Transmit (Tx) power information corresponding to a Tx power of the first-transactor advertisement message.[000668] Example 55 includes the subject matter of any one of Examples 1-54, and optionally, wherein a second-transactor advertisement message of the one or more second-transactoradvertisement messages comprises user identification information, and a role identifier, the user identification information configured to uniquely identify for a transaction service a second wireless communication device from which the second-transactor advertisement message is transmitted, the role identifier set to a predefined role identifier setting to identify that the second wireless communication device is to perform the second transactor role.[000669] Example 56 includes the subject matter of Example 55, and optionally, wherein the second-transactor advertisement message comprises device type information to identify a type of the second wireless communication device.[000670] Example 57 includes the subject matter of Example 55 or 56, and optionally, wherein the second-transactor advertisement message comprises proximity-detection threshold information to identify a proximity-detection threshold to be applied to a proximity-detection measurement corresponding to the second-transactor advertisement message.[000671] Example 58 includes the subject matter of any one of Examples 55-57, and optionally, wherein a second-transactor advertisement message comprises Transmit (Tx) power information corresponding to a Tx power of the second-transactor advertisement message.[000672] Example 59 includes the subject matter of any one of Examples 1-58, and optionally, wherein the transaction comprises a monetary transaction to transfer a payment from a user of the first wireless communication device, the first transactor role comprising a payer role, the second transactor role comprises a payment receiver role.[000673] Example 60 includes the subject matter of any one of Examples 1-59, and optionally, wherein the one or more first-transactor advertisement messages comprises one or more first Bluetooth (BT) messages, and the one or more second-transactor advertisement messages comprises one or more second BT messages.[000674] Example 61 includes the subject matter of Example 60, and optionally, wherein the wireless communication link comprises a BT link.[000675] Example 62 includes a product comprising one or more tangible computer-readable non-transitory storage media comprising instructions operable to, when executed by at least one processor, enable the at least one processor to cause a first wireless communication device to transmit one or more second-transactor advertisement messages to advertise the first wireless communication device is to perform a second transactor role for a transaction; scan for one or more first-transactor advertisement messages from one or more second wireless communication devices; generate detection information based on one or more detected devices to perform a first transactor role, the one or more detected devices determined based on proximity-detectionmeasurements corresponding to the one or more first-transactor advertisement messages; send the detection information to a second wireless communication device of the one or more second wireless communication devices; and exchange transaction information of the transaction over a wireless communication link between the first wireless communication device and the second wireless communication device.[000676] Example 63 includes the subject matter of Example 62, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine whether a second wireless communication device is to be identified as a detected device based on a comparison between a proximity-detection measurement corresponding to a first-transactor advertisement message from the second wireless communication device and a proximitydetection threshold.[000677] Example 64 includes the subject matter of Example 63, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on information in the first-transactor advertisement message from the second wireless communication device.[000678] Example 65 includes the subject matter of Example 63 or 64, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on device identification information in the first-transactor advertisement message from the second wireless communication device.[000679] Example 66 includes the subject matter of any one of Examples 63-65, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on Transmit (Tx) power information in the first-transactor advertisement message from the second wireless communication device.[000680] Example 67 includes the subject matter of any one of Examples 63-66, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on threshold information in the first-transactor advertisement message from the second wireless communication device.[000681] Example 68 includes the subject matter of any one of Examples 63-67, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on a device type of the second wireless communication device.[000682] Example 69 includes the subject matter of any one of Examples 63-68, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 40 centimeters.[000683] Example 70 includes the subject matter of any one of Examples 63-69, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 30 centimeters.[000684] Example 71 includes the subject matter of any one of Examples 63-70, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 20 centimeters.[000685] Example 72 includes the subject matter of any one of Examples 73-71, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 10 centimeters.[000686] Example 73 includes the subject matter of any one of Examples 63-72, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 5 centimeters.[000687] Example 74 includes the subject matter of any one of Examples 63-73, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 2 centimeters.[000688] Example 75 includes the subject matter of any one of Examples 63-74, and optionally, wherein the proximity-detection threshold is configured for a detection distance of no more than 1 centimeter.[000689] Example 76 includes the subject matter of any one of Examples 63-75, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine that the second wireless communication device is to be identified as the detected device based on a determination that the proximity-detection measurement corresponding to the first-transactor advertisement message from the second wireless communication device exceeds the proximity-detection threshold.[000690] Example 77 includes the subject matter of any one of Examples 63-76, and optionally, wherein the instructions, when executed, cause the first wireless communication device to determine that the second wireless communication device is not to be identified as the detected device based on a determination that the proximity-detection measurement corresponding to the first-transactor advertisement message from the second wireless communication device does not exceed the proximity-detection threshold.[000691] Example 78 includes the subject matter of any one of Examples 62-77, and optionally, wherein the instructions, when executed, cause the first wireless communication device to perform the proximity-detection measurements comprising received power measurements corresponding to the one or more first-transactor advertisement messages.[000692] Example 79 includes the subject matter of any one of Examples 62-78, and optionally, wherein the instructions, when executed, cause the first wireless communication device to perform the proximity-detection measurements comprising Received Signal Strength Indicator (RSSI) measurements corresponding to the one or more first-transactor advertisement messages.[000693] Example 80 includes the subject matter of any one of Examples 62-79, and optionally, wherein the instructions, when executed, cause the first wireless communication device to store sensor data based on sensor information from one or more sensors of the first wireless communication device; and transmit the sensor data to the second wireless communication device.[000694] Example 81 includes the subject matter of Example 80, and optionally, wherein the sensor data comprises magnetic-field data from a magnetic-field sensor of the first wireless communication device.[000695] Example 82 includes the subject matter of Example 81, and optionally, wherein the magnetic-field data comprises a plurality of magnetic-field measurements, and a plurality of time-stamps corresponding to the plurality of magnetic-field measurements.[000696] Example 83 includes the subject matter of any one of Examples 80-82, and optionally, wherein the sensor data comprises at least one of accelerometer data from an accelerometer of the first wireless communication device, light data from a light sensor of the first wireless communication device, acoustic data from an acoustic sensor of the first wireless communication device, vibration data from a vibration sensor of the first wireless communication device, or image data from an image sensor of the first wireless communication device.[000697] Example 84 includes the subject matter of any one of Examples 62-83, and optionally, wherein the instructions, when executed, cause the first wireless communication device to verify authenticity of a signed user information tuple from the second wireless communication device based on a server public key from a server, wherein the signed user information tuple comprises user identification information to identify a user of the second wireless communication device, and a user public key corresponding to the user of the secondwireless communication device; send a challenge message to the second wireless communication device, the challenge message comprising challenge information encrypted according to the user public key corresponding to the user of the second wireless communication device; and verify the user identification information of the second wireless communication device based on a determination that a response from the second wireless communication device is based on the challenge information.[000698] Example 85 includes the subject matter of Example 84, and optionally, wherein the instructions, when executed, cause the first wireless communication device to verify signed transaction information from the second wireless communication device based on the user public key corresponding to the user of the second wireless communication device.[000699] Example 86 includes the subject matter of Example 85, and optionally, wherein the instructions, when executed, cause the first wireless communication device to send the signed transaction information from the second wireless communication device to the server.[000700] Example 87 includes the subject matter of any one of Examples 62-86, and optionally, wherein the instructions, when executed, cause the first wireless communication device to store security information corresponding to a user of the first wireless communication device, the security information comprising a user public key corresponding to the user of the first wireless communication device, a user secret key corresponding to the user of the first wireless communication device, and a signed user information tuple corresponding to the user of the first wireless communication device, wherein the signed user information tuple comprises user identification information to identify the user of the first wireless communication device and the user public key corresponding to the user of the first wireless communication device; send the signed user information tuple corresponding to the user of the first wireless communication device to the second wireless communication device; process a challenge message from the second wireless communication device to decrypt challenge information according to the user secret key corresponding to the user of the first wireless communication device; and send to the second wireless communication device a response based on the challenge information.[000701] Example 88 includes the subject matter of Example 87, and optionally, wherein the instructions, when executed, cause the first wireless communication device to send signed transaction information to the second wireless communication device, the signed transaction information signed based on the user secret key corresponding to the user of the first wireless communication device.[000702] Example 89 includes the subject matter of any one of Examples 62-88, and optionally, wherein the transaction information comprises first user identification information of a user of the first wireless communication device, second user identification information of a user of the second wireless communication device, one or more transaction identifiers, and a transaction amount.[000703] Example 90 includes the subject matter of any one of Examples 62-89, and optionally, wherein the instructions, when executed, cause the first wireless communication device to confirm execution of the transaction with a server based on the transaction information.[000704] Example 91 includes the subject matter of any one of Examples 62-90, and optionally, wherein a second-transactor advertisement message of the one or more second- transactor advertisement messages comprises user identification information, and a role identifier, the user identification information configured to uniquely identify the first wireless communication device for a transaction service, the role identifier set to a predefined role identifier setting to identify that the first wireless communication device is to perform the second transactor role.[000705] Example 92 includes the subject matter of any one of Examples 62-91, and optionally, wherein a second-transactor advertisement message of the one or more second- transactor advertisement messages comprises device type information to identify a type of the first wireless communication device.[000706] Example 93 includes the subject matter of any one of Examples 62-92, and optionally, wherein a second-transactor advertisement message of the one or more second- transactor advertisement messages comprises proximity-detection threshold information to identify a proximity-detection threshold to be applied to a proximity-detection measurement corresponding to the second-transactor advertisement message.[000707] Example 94 includes the subject matter of any one of Examples 62-93, and optionally, wherein a second-transactor advertisement message of the one or more second- transactor advertisement messages comprises Transmit (Tx) power information corresponding to a Tx power of the second-transactor advertisement message.[000708] Example 95 includes the subject matter of any one of Examples 62-94, and optionally, wherein a first-transactor advertisement message of the one or more first-transactor advertisement messages comprises user identification information, and a role identifier, the user identification information configured to uniquely identify for a transaction service a secondwireless communication device from which the first-transactor advertisement message is transmitted, the role identifier set to a predefined role identifier setting to identify that the second wireless communication device is to perform the first transactor role.[000709] Example 96 includes the subject matter of Example 95, and optionally, wherein the first-transactor advertisement message comprises device type information to identify a type of the second wireless communication device.[000710] Example 97 includes the subject matter of Example 95 or 96, and optionally, wherein the first-transactor advertisement message comprises proximity-detection threshold information to identify a proximity-detection threshold to be applied to a proximity-detection measurement corresponding to the first-transactor advertisement message.[000711] Example 98 includes the subject matter of any one of Examples 95-97, and optionally, wherein the first-transactor advertisement message comprises Transmit (Tx) power information corresponding to a Tx power of the first-transactor advertisement message.[000712] Example 99 includes the subject matter of any one of Examples 62-98, and optionally, wherein the transaction comprises a monetary transaction to transfer a payment to a user of the first wireless communication device, the first transactor role comprising a payer role, the second transactor role comprises a payment receiver role.[000713] Example 100 includes the subject matter of any one of Examples 62-99, and optionally, wherein the one or more first-transactor advertisement messages comprises one or more first Bluetooth (BT) messages, and the one or more second-transactor advertisement messages comprises one or more second BT messages.[000714] Example 101 includes the subject matter of Example 100, and optionally, wherein the wireless communication link comprises a BT link.[000715] Example 102 includes a device comprising the product of any of Examples 1-101.[000716] Example 103 includes a mobile device comprising the apparatus of any of Examples 1-101.[000717] Example 104 includes a system comprising a server and a plurality of devices comprising means for executing any of the described operations of any of Examples 1-101.[000718] Example 105 includes an apparatus comprising means for executing any of the described operations of any of Examples 1-101.[000719] Example 106 includes an apparatus comprising: a memory interface; and processing circuitry configured to: perform any of the described operations of any of Examples 1-101.[000720] Example 107 includes a method comprising any of the described operations of any of Examples 1-101.[000721] Functions, operations, components and / or features described herein with reference to one or more aspects, may be combined with, or may be utilized in combination with, one or more other functions, operations, components and / or features described herein with reference to one or more other aspects, or vice versa.[000722] While certain features have been illustrated and described herein, many modifications, substitutions, changes, and equivalents may occur to those skilled in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the disclosure.
Claims
CLAIMSWhat is claimed is:
1. A product comprising one or more tangible computer-readable non-transitory storage media comprising instructions operable to, when executed by at least one processor, enable the at least one processor to cause a first wireless communication device to: transmit one or more first-transactor advertisement messages to advertise the first wireless communication device is to perform a first transactor role for a transaction; scan for one or more second-transactor advertisement messages from one or more second wireless communication devices; determine a selected device from the one or more second wireless communication devices based on proximity-detection measurements corresponding to the one or more second- transactor advertisement messages; process detection information from the selected device to determine whether the selected device is to be validated to perform a second transactor role for the transaction, wherein the detection information from the selected device is based on one or more devices detected by the selected device; and based on a determination that the selected device is to be validated to perform the second transactor role, exchange transaction information of the transaction over a wireless communication link between the first wireless communication device and the selected device.
2. The product of claim 1, wherein the instructions, when executed, cause the first wireless communication device to determine whether the selected device is to be validated to perform the second transactor role based on a determination whether the detection information from the selected device indicates that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages.
3. The product of claim 2, wherein the instructions, when executed, cause the first wireless communication device to determine that the selected device is to be validated to perform the second transactor role based on a determination that the detection information from the selected device indicates that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages.
4. The product of claim 3, wherein the instructions, when executed, cause the first wireless communication device to determine that the selected device is not to be validated to perform the second transactor role based on a determination that the detection information fromthe selected device does not indicate that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages.
5. The product of claim 1, wherein the instructions, when executed, cause the first wireless communication device to: determine one or more candidate devices based on a candidate-detection criterion applied to the proximity-detection measurements corresponding to the one or more second- transactor advertisement messages; and determine the selected device based on the one or more candidate devices.
6. The product of claim 5, wherein the instructions, when executed, cause the first wireless communication device to identify the selected device from the one or more candidate devices based on proximity-detection measurements corresponding to the one or more candidate devices.
7. The product of claim 5, wherein the instructions, when executed, cause the first wireless communication device to determine whether a second wireless communication device is to be identified as a candidate device based on a comparison between a proximity-detection measurement corresponding to a second-transactor advertisement message from the second wireless communication device and a proximity-detection threshold.
8. The product of claim 7, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on information in the second-transactor advertisement message from the second wireless communication device.
9. The product of claim 7, wherein the instructions, when executed, cause the first wireless communication device to determine the proximity-detection threshold based on at least one of device identification information in the second-transactor advertisement message from the second wireless communication device, Transmit (Tx) power information in the second- transactor advertisement message from the second wireless communication device, threshold information in the second-transactor advertisement message from the second wireless communication device, or a device type of the second wireless communication device.
10. The product of claim 7, wherein the proximity-detection threshold is configured for a detection distance of no more than 40 centimeters.
11. The product of claim 7, wherein the instructions, when executed, cause the first wireless communication device to determine that the second wireless communication device is to be identified as the candidate device based on a determination that the proximity-detection measurement corresponding to the second-transactor advertisement message from the second wireless communication device exceeds the proximity-detection threshold.
12. The product of claim 7, wherein the instructions, when executed, cause the first wireless communication device to determine that the second wireless communication device is not to be identified as the candidate device based on a determination that the proximitydetection measurement corresponding to the second-transactor advertisement message from the second wireless communication device does not exceed the proximity-detection threshold.
13. The product of claim 1, wherein the instructions, when executed, cause the first wireless communication device to perform the proximity-detection measurements comprising received power measurements corresponding to the one or more second-transactor advertisement messages.
14. The product of claim 1, wherein the instructions, when executed, cause the first wireless communication device to: store first sensor data based on sensor information from one or more sensors of the first wireless communication device; receive second sensor information from the selected device; and determine whether the selected device is to be validated to perform the second transactor role based on the detection information from the selected device, the first sensor data, and the second sensor data.
15. The product of claim 14, wherein the first sensor data comprises first magnetic-field data from a magnetic-field sensor of the first wireless communication device, wherein the second sensor information comprises second magnetic -field data from the selected device.
16. The product of claim 14, wherein the instructions, when executed, cause the first wireless communication device to: determine whether a close-proximity event is detected based on the first sensor data and the second sensor data; anddetermine whether the selected device is to be validated to perform the second transactor role based on whether the close-proximity event is detected based on the first sensor data and the second sensor data.
17. The product of claim 16, wherein the instructions, when executed, cause the first wireless communication device to determine whether the close-proximity event is detected based on a correlation between the first sensor data and the second sensor data.
18. The product of claim 16, wherein the instructions, when executed, cause the first wireless communication device to determine whether the close-proximity event is detected based on a first event timing and a second event timing, the first event timing comprises a first timing of a first event detection based on the first sensor data, the second event timing comprises a second timing of a second event detection based on the second sensor data.
19. The product of claim 18, wherein the instructions, when executed, cause the first wireless communication device to determine that the close-proximity event is detected based on a determination that a time difference between the first event timing and the second event timing does not exceed a predefined time threshold.
20. The product of claim 16, wherein the instructions, when executed, cause the first wireless communication device to determine that the selected device is to be validated to perform the second transactor role based on a determination that the detection information from the selected device indicates that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages, and a determination that the close-proximity event is detected based on the first sensor data and the second sensor data.
21. The product of claim 16, wherein the instructions, when executed, cause the first wireless communication device to determine that the selected device is not to be validated to perform the second transactor role based on at least one of a determination that the detection information from the selected device does not indicate that the first wireless communication device is detected by the selected device based on the one or more first-transactor advertisement messages, or a determination that the close-proximity event is not detected based on the first sensor data and the second sensor data.
22. The product of claim 16, wherein the close-proximity event comprises a distance of no more than 10 centimeters between the first wireless communication device and the selected device.
23. The product of claim 14, wherein the first sensor data comprises at least one of accelerometer data from an accelerometer of the first wireless communication device, light data from a light sensor of the first wireless communication device, acoustic data from an acoustic sensor of the first wireless communication device, vibration data from a vibration sensor of the first wireless communication device, or image data from an image sensor of the first wireless communication device.
24. The product of any one of claims 1-23, wherein the instructions, when executed, cause the first wireless communication device to: verify authenticity of a signed user information tuple from the selected device based on a server public key from a server, wherein the signed user information tuple comprises user identification information to identify a user of the selected device and a user public key corresponding to the user of the selected device; send a challenge message to the selected device, the challenge message comprising challenge information encrypted according to the user public key corresponding to the user of the selected device; and verify the user identification information based on a determination that a response from the selected device is based on the challenge information.
25. The product of claim 24, wherein the instructions, when executed, cause the first wireless communication device to verify signed transaction information from the selected device based on the user public key corresponding to the user of the selected device.
26. The product of claim 25, wherein the instructions, when executed, cause the first wireless communication device to send the signed transaction information from the selected device to the server.
27. The product of any one of claims 1-23, wherein the instructions, when executed, cause the first wireless communication device to: store security information corresponding to a user of the first wireless communication device, the security information comprising a user public key corresponding to the user of the first wireless communication device, a user secret key corresponding to the user of the firstwireless communication device, and a signed user information tuple corresponding to the user of the first wireless communication device, wherein the signed user information tuple comprises user identification information to identify the user of the first wireless communication device and the user public key corresponding to the user of the first wireless communication device; send the signed user information tuple corresponding to the user of the first wireless communication device to the selected device; process a challenge message from the selected device to decrypt challenge information according to the user secret key corresponding to the user of the first wireless communication device; and send to the selected device a response based on the challenge information.
28. The product of claim 27, wherein the instructions, when executed, cause the first wireless communication device to send signed transaction information to the selected device, the signed transaction information signed based on the user secret key corresponding to the user of the first wireless communication device.
29. The product of any one of claims 1-23, wherein the instructions, when executed, cause the first wireless communication device to confirm execution of the transaction with a server based on the transaction information.
30. The product of any one of claims 1-23, wherein a first-transactor advertisement message of the one or more first-transactor advertisement messages comprises user identification information, and a role identifier, the user identification information configured to uniquely identify the first wireless communication device for a transaction service, the role identifier set to a predefined role identifier setting to identify that the first wireless communication device is to perform the first transactor role.
31. The product of any one of claims 1-23, wherein a second-transactor advertisement message of the one or more second-transactor advertisement messages comprises user identification information, and a role identifier, the user identification information configured to uniquely identify for a transaction service a second wireless communication device from which the second-transactor advertisement message is transmitted, the role identifier set to a predefined role identifier setting to identify that the second wireless communication device is to perform the second transactor role.
32. The product of any one of claims 1-23, wherein the transaction comprises a monetary transaction to transfer a payment from a user of the first wireless communication device, the first transactor role comprising a payer role, the second transactor role comprises a payment receiver role.
33. The product of any one of claims 1-23, wherein the one or more first-transactor advertisement messages comprises one or more first Bluetooth (BT) messages, and the one or more second-transactor advertisement messages comprises one or more second BT messages.
34. The product of claim 33, wherein the wireless communication link comprises a BT link.
35. A product comprising one or more tangible computer-readable non-transitory storage media comprising instructions operable to, when executed by at least one processor, enable the at least one processor to cause a first wireless communication device to: transmit one or more second-transactor advertisement messages to advertise the first wireless communication device is to perform a second transactor role for a transaction; scan for one or more first-transactor advertisement messages from one or more second wireless communication devices; generate detection information based on one or more detected devices to perform a first transactor role, the one or more detected devices determined based on proximity-detection measurements corresponding to the one or more first-transactor advertisement messages; send the detection information to a second wireless communication device of the one or more second wireless communication devices; and exchange transaction information of the transaction over a wireless communication link between the first wireless communication device and the second wireless communication device.
36. The product of claim 35, wherein the instructions, when executed, cause the first wireless communication device to determine whether a second wireless communication device is to be identified as a detected device based on a comparison between a proximity-detection measurement corresponding to a first-transactor advertisement message from the second wireless communication device and a proximity-detection threshold.
37. The product of claim 35, wherein the instructions, when executed, cause the first wireless communication device to:store sensor data based on sensor information from one or more sensors of the first wireless communication device; and transmit the sensor data to the second wireless communication device.
38. The product of claim 35, wherein the instructions, when executed, cause the first wireless communication device to: verify authenticity of a signed user information tuple from the second wireless communication device based on a server public key from a server, wherein the signed user information tuple comprises user identification information to identify a user of the second wireless communication device, and a user public key corresponding to the user of the second wireless communication device; send a challenge message to the second wireless communication device, the challenge message comprising challenge information encrypted according to the user public key corresponding to the user of the second wireless communication device; and verify the user identification information of the second wireless communication device based on a determination that a response from the second wireless communication device is based on the challenge information.
39. The product of claim 38, wherein the instructions, when executed, cause the first wireless communication device to verify signed transaction information from the second wireless communication device based on the user public key corresponding to the user of the second wireless communication device.
40. The product of claim 39, wherein the instructions, when executed, cause the first wireless communication device to send the signed transaction information from the second wireless communication device to the server.
41. The product of any one of claims 35-40, wherein the instructions, when executed, cause the first wireless communication device to: store security information corresponding to a user of the first wireless communication device, the security information comprising a user public key corresponding to the user of the first wireless communication device, a user secret key corresponding to the user of the first wireless communication device, and a signed user information tuple corresponding to the user of the first wireless communication device, wherein the signed user information tuple comprises user identification information to identify the user of the first wireless communication device and the user public key corresponding to the user of the first wireless communication device;send the signed user information tuple corresponding to the user of the first wireless communication device to the second wireless communication device; process a challenge message from the second wireless communication device to decrypt challenge information according to the user secret key corresponding to the user of the first wireless communication device; and send to the second wireless communication device a response based on the challenge information.
42. The product of claim 41, wherein the instructions, when executed, cause the first wireless communication device to send signed transaction information to the second wireless communication device, the signed transaction information signed based on the user secret key corresponding to the user of the first wireless communication device.
43. The product of any one of claims 35-40, wherein the one or more first-transactor advertisement messages comprises one or more first Bluetooth (BT) messages, and the one or more second-transactor advertisement messages comprises one or more second BT messages.
44. The product of claim 43, wherein the wireless communication link comprises a BT link.
Citation Information
Patent Citations
Pairing devices based on distance
CN113711534A
A method and a system for executing a transaction
EP3798957A1
Wireless peer to peer mobile wallet connections
US11240217B1
Platform for Wireless Identity Transmitter and System Using Short Range Wireless Broadcast
US20130217332A1
Pairing Devices Based on Distance
US20230147041A1