System and method for blockchain-based non-homogeneous token (NFT) identity authentication
By using dynamic NFTs on the blockchain for user identity authentication, the problems of cumbersome user registration process and data security risks in the existing technology are solved, and the effect of simplifying the registration process and improving data security is achieved.
Patent Information
- Application Number
- CN202380061404.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2022-08-24
- Filing Date
- 2023-03-08
- Publication Date
- 2025-05-16
AI Technical Summary
When registering on the service provider's website in the prior art, users need to manually enter a large amount of personal and financial information, resulting in high friction in the guidance process, high user abandonment rate, and data security risks.
Systems and methods for user identity authentication using blockchain-based dynamic NFTs, capture user biometric data through sensors of mobile devices, encode and generate dynamic NFTs, and store them on a distributed blockchain for identity authentication across multiple service providers.
It simplifies the user registration process, reduces friction during the guidance process, improves user experience, reduces user abandonment rate, and significantly reduces the risk of data leakage.
Smart Images

Figure CN120019374A_ABST
Abstract
Description
[0001] Cross-references to related patent applications
[0002] This application claims the benefit of priority to U.S. Application No. 17 / 894,869, filed on August 24, 2022, which is incorporated by reference in its entirety into this application and becomes a part of this application. Technical Field
[0003] The present disclosure generally relates to a transaction authentication mechanism, and more specifically, to a system and method for blockchain-based non-fungible token (NFT) authentication. Background Art
[0004] Service providers, such as financial institutions, sometimes experience high user abandonment rates due to friction in the onboarding process. Often, users will attempt to register on a service provider's website, but they may be reluctant to complete the registration process due to the length of required fields, such as the need for users to manually enter their personal and financial information into a lengthy list of input fields. Amid the increasing frequency of data breaches, users are sometimes reluctant to leave their personal and financial credentials in centralized servers across various service provider platforms for security reasons. This requirement to manually enter personal and financial credentials in centralized servers across several platforms may turn some users away prematurely, leading to abandonment of the registration process and online transactions.
[0005] Therefore, there is a need for systems and methods that provide a simple and secure boot process, reducing friction in the boot process while also enhancing data security. Summary of the invention
[0006] According to certain aspects of the present disclosure, systems and methods for generating blockchain-based dynamic non-fungible tokens (NFTs) for user identity authentication are disclosed.
[0007] In one embodiment, a system for generating a dynamic NFT to authenticate one or more users is disclosed. The system includes a mobile device, the mobile device including: one or more sensors that can capture images or videos; at least one memory storing instructions; one or more processors that are operably connected to the one or more sensors and the at least one memory, and can execute instructions to perform the following operations: receiving at least one request from one or more mobile devices associated with the one or more users; capturing one or more images, one or more videos, or a combination thereof, and identification data associated with the one or more users, or a combination thereof, of the one or more users through the one or more sensors; processing the one or more images, the one or more videos, or a combination thereof to detect biometric data unique to the one or more users; encoding the detected biometric data to generate a dynamic NFT; storing the dynamic NFT on a transaction block of a distributed blockchain, wherein the dynamic NFT is associated with a programmatically defined smart contract written to the distributed blockchain; transmitting the dynamic NFT to multiple service providers to authenticate the one or more users.
[0008] According to another embodiment, a computer-implemented method for generating a dynamic NFT to authenticate one or more users is disclosed. The computer-implemented method includes: receiving at least one request from one or more mobile devices associated with the one or more users; capturing one or more images, one or more videos, or a combination thereof, and identification data associated with the one or more users, or a combination thereof, through the one or more sensors; processing the one or more images, the one or more videos, or a combination thereof to detect biometric data unique to the one or more users; encoding the detected biometric data to generate a dynamic NFT; storing the dynamic NFT on a transaction block of a distributed blockchain, wherein the dynamic NFT is associated with a programmatically defined smart contract written to the distributed blockchain; transmitting the dynamic NFT to multiple service providers to authenticate the one or more users.
[0009] According to a further embodiment, a non-transitory computer-readable medium for generating a dynamic NFT to authenticate one or more users is disclosed. The non-transitory computer-readable medium stores instructions, and when the instructions are executed by one or more processors, the instructions can cause the one or more processors to perform the following operations: receiving at least one request from one or more mobile devices associated with the one or more users; capturing one or more images, one or more videos, or a combination thereof, or identification data associated with the one or more users, or a combination thereof, through one or more sensors; processing the one or more images, the one or more videos, or a combination thereof, to detect biometric data unique to the one or more users; encoding the detected biometric data to generate a dynamic NFT; storing the dynamic NFT on a transaction block of a distributed blockchain, wherein the dynamic NFT is associated with a programmatically defined smart contract written to the distributed blockchain; transmitting the dynamic NFT to multiple service providers to authenticate the one or more users.
[0010] In certain embodiments, the non-transitory computer-readable medium may be embedded in each node of the blockchain. Further objects and advantages of the disclosed embodiments will be partially set forth in the following description and partially apparent, or may be learned by the practice of the disclosed embodiments. These objects and advantages of the disclosed embodiments may be realized and obtained by using the elements and combinations specifically pointed out in the appended claims.
[0011] It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the specific embodiments claimed. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate various exemplary embodiments and, together with the following description, explain the principles of the disclosed embodiments.
[0013] Figure 1 It is a schematic diagram of a system that can be used to generate a blockchain-based dynamic NFT for user identity authentication according to various aspects of the present disclosure.
[0014] Figure 2 1 is a schematic diagram of components of the identity authentication platform 113 and the blockchain 115 according to various aspects of the present disclosure.
[0015] Figure 3 It is a flowchart of the process for generating a blockchain-based dynamic NFT for user authentication according to various aspects of the present disclosure.
[0016] Figures 4A-4MIt is a user interface diagram showing a simple one-time registration process for online services according to various aspects of the present disclosure.
[0017] Figures 5A-5F It is a user interface diagram showing a scenario in which different service providers use previously generated blockchain-based dynamic NFTs to authenticate users according to various aspects of the present disclosure.
[0018] Figure 6 shows an example machine learning training flow chart.
[0019] Figure 7 An implementation of a general purpose computer system is shown that can perform the techniques described herein. DETAILED DESCRIPTION
[0020] The principles of the present disclosure are described by reference to the illustrative embodiments of specific applications, but it should be understood that the present disclosure is not limited to these embodiments. Those of ordinary skill in the art and those guided by the present invention will recognize that other modifications, applications, embodiments and replacement of equivalent solutions all fall within the scope of the embodiments described in the present invention. Therefore, it should be considered that the present invention is not limited by the above description.
[0021] Various non-limiting embodiments of the present disclosure are now described to provide an overall understanding of the structure, functions, and usage principles of the system and method for generating blockchain-based dynamic NFTs for user identity authentication disclosed in the present invention.
[0022] Traditionally, users open an account, such as a digital wallet, by registering on a service provider's website. For example, users may be required to manually enter information such as name, email address, physical address, credit card information, bank account information, etc. into a lengthy list of data fields. This time-consuming and complex onboarding process can cause friction and turn away target users (such as potential customers). Onboarding is an important step in any online process and is also the step in authenticating users with comprehensive verification. For example, authentication methods during the onboarding process can include complex processes such as multi-factor authentication (MFA), background checks, or advanced biometric procedures. These processes can be intrusive and may deter legitimate users. Users value their time and generally want convenient and secure access to banking products. Users may also want to receive good deals and want to be able to manage their personal digital data. However, current onboarding processes can be time-consuming and inefficient, for example, asking repetitive questions that frustrate users. Users may be required to provide identity information on every web page of a service provider and may not have control over the data provided to these service providers. Users may also be concerned about the security measures taken by the service provider to protect their personal information.
[0023] Each service provider may have a centralized server where user credentials can be stored. Requiring users to store their personal and financial information on different servers can expose users to security risks, as it is difficult to gauge the safeguards each service provider has in place to keep their data safe. In one example implementation, a service provider with a high abandonment rate and a history of data breaches was also concerned about the security of the stored data. They were challenged to provide a technological solution that would reduce the time required to onboard new customers, simplify the KYC process, reduce abandonment rates, and prevent potential future data breaches.
[0024] To solve these problems, Figure 1 System 100 in introduces the ability to generate dynamic blockchain-based NFTs for user identity authentication. System 100 provides a unique approach to implementing a blockchain-based Know Your Customer (KYC) solution that can have a one-time onboarding process to create the user's KYC required information as a decentralized dynamic NFT on the blockchain. System 100 can also provide a wallet extension that stores the NFT so that the NFT can be used in the future, while also allowing the user to have full control over the NFT stored on the blockchain. This approach is a significant improvement over current technology, which is time-consuming, inefficient, and obstructive, causing friction in the onboarding process and exposing users to security risks.
[0025] System 100 leverages the ubiquitous modern technology infrastructure to collect, verify user identities and store them as dynamic NFTs on the blockchain. System 100 efficiently manages these stored dynamic NFTs, reduces friction in the onboarding process through a simple KYC process, greatly reduces abandonment rates, and ultimately increases revenue. This simple KYC process for implementing dynamic NFTs significantly reduces the risk of data breaches by storing data on the blockchain rather than on centralized servers across different platforms. In addition, System 100 provides users with a solution to control the use of their digital identities.
[0026] Figure 1 is a schematic diagram of a system capable of generating a blockchain-based dynamic NFT for user authentication according to an example embodiment. Figure 1 Introducing the ability to modernize communications and data processing capabilities within existing methods and systems to generate dynamic NFTs and store them in the blockchain for identity authentication. Figure 1 , that is, an example architecture of one or more example embodiments of the present invention, includes a system 100, wherein the system 100 includes a user 101, a user equipment (UE) 103 (including an application 105 and a sensor 107), an issuer 109, a communication network 111, an identity authentication platform 113, a blockchain 115 and a database 117.
[0027] In one embodiment, user 101 may be an individual or any entity that interacts with a user interface or a web interface associated with a service provider (e.g., issuer 109) to open an account (e.g., a digital wallet account). In one embodiment, for payment-related services provided by a service provider, user 101 may include registered users, potential users, returning users, visiting users, authorized users, unauthorized users, etc.
[0028] In one embodiment, UE 103 may include, but is not limited to, any type of mobile terminal, wireless terminal, fixed terminal, or portable terminal. Examples of UE 103 may include, but are not limited to, mobile phones, wireless communication devices, stations, units, devices, multimedia computers, multimedia tablet computers, Internet nodes, communicators, desktop computers, laptop computers, notebook computers, netbooks, tablet computers, personal communication systems (PCS) devices, personal navigation devices, personal digital assistants (PDAs), digital cameras / camcorders, infotainment systems, dashboard computers, television devices, or any combination thereof, including accessories and peripherals of these devices, or any combination thereof. In addition, UE 103 may also facilitate various input means for receiving and generating information, including, but not limited to, touch screen functionality, keyboards, keypad data entry, voice-based input mechanisms, etc. Any known and future implementations of UE 103 may also be applicable.
[0029] In one embodiment, the UE 103 may include an application 105. Further, the application 105 may include various applications, such as but not limited to content providing applications, networking applications, multimedia applications, media player applications, camera / imaging applications, software applications, etc. In one embodiment, one of the applications 105 of the UE 103 may act as a client of the identity authentication platform 113, and may interact with the identity authentication platform 113 through the communication network 111 to perform one or more functions associated with the functions of the identity authentication platform 113.
[0030] For example, sensor 107 may be any type of sensor. In one embodiment, sensor 107 may include a network detection sensor for detecting wireless signals or receivers for various short-range communications (e.g., Bluetooth, Wi-Fi, Li-Fi, near field communication (NFC), etc.), a camera / imaging sensor for collecting image data, a recorder for collecting audio data, etc. In one embodiment, sensor 107 may include a ledger sensor, for example, software implemented simultaneously with blockchain 115 that monitors each transaction written to blockchain 115 to obtain information that the ledger sensor is instructed to find. Such a ledger sensor may be activated by a request to search blockchain 115 for data corresponding to the request.
[0031] In one embodiment, the issuer 109 may include a service provider, such as a bank, a financial institution, etc., which can manage payment-related services between the user 101 and the merchant. In one example embodiment, the issuer 109 can manage a payment account on behalf of the user 101 and can transfer money for purchased goods and services in this account. In another example embodiment, the issuer 109 can manage a collection account on behalf of the merchant, and the merchant can receive money for the provided goods and services in this account.
[0032] In one embodiment, the various elements of the system 100 can communicate with each other via a communication network 111. The communication network 111 can support a variety of different communication protocols and communication technologies. In one embodiment, the communication network 111 allows the identity authentication platform 113 to communicate with the UE 103, the issuer 109, and the blockchain 115. The communication network 111 of the system 100 includes one or more networks, such as a data network, a wireless network, a telephone network, or any combination thereof. It is foreseeable that the data network can be any local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a public data network (such as the Internet), a short-range wireless network, or any other suitable packet switching network, such as a commercially owned proprietary packet switching network, such as a proprietary cable or fiber optic network, etc., or any combination thereof. In addition, the wireless network can be a cellular communication network, and can use various technologies, including 5G (fifth generation), 4G, 3G, 2G, Long Term Evolution (LTE), Wireless Fidelity (Wi-Fi), Internet Protocol (IP) data broadcasting, satellite, mobile ad-hoc network (MANET), automotive controller area network (CAN bus), etc. or any combination thereof.
[0033] In one embodiment, the identity authentication platform 113 may be a platform with multiple interconnected components. The identity authentication platform 113 may include one or more servers, intelligent networked devices, computing devices, components, and corresponding software for generating blockchain-based dynamic NFTs for user identity authentication. In addition, it should be noted that the identity authentication platform 113 may be a separate entity from the system 100. Further details of the identity authentication platform 113 are provided below.
[0034] In one embodiment, blockchain 115 can store unchangeable information once the data is submitted to the chain, so it is a decentralized, distributed and unchangeable database in which the data is logically structured into a series of smaller data blocks (blocks). In one example embodiment, in blockchain 115, each block B i>0 Through the cryptographic hash function H(B i-1 ) and the previous block B i-1 Fixed connection. i-1 Any changes to Bi and all subsequent blocks. The first block B0 (i.e., the genesis block) is the only block without a preceding block. In one instance, in order to ensure the integrity of the block and the data contained therein, respectively, the block can be digitally signed. In an example embodiment, as each transaction occurs, these transactions can be recorded as data blocks in the blockchain 115. These blocks can form a data chain as assets flow from place to place or ownership is transferred. These blocks can confirm the exact time and order of transactions and can be securely linked together to prevent any block from being altered or inserted between two existing blocks. In one embodiment, each additional block can strengthen the verification of the previous block, thereby forming a protected blockchain. The blockchain 115 can be a tamper-proof blockchain with the key advantage of being unchangeable. This eliminates the possibility of tampering by malicious actors and establishes a transaction ledger that users can trust.
[0035] In an example embodiment, a network participant (e.g., a registered user 101) can access a blockchain 115 and its unchangeable transaction record. In such a shared ledger, a transaction can be recorded only once, eliminating the duplication of records typical in traditional business networks. For example, after a transaction has been recorded to the blockchain 115, a participant may not change or tamper with the transaction. However, if the transaction record contains an error, a new transaction can be added to correct the error, and then both transactions can be seen at the same time. In one instance, to speed up transactions, a set of rules, such as smart contracts, can be stored and automatically executed on the blockchain. Due to the transparency, proof of ownership, and traceability of transactions in a blockchain network, NFTs can be created using blockchain technology (e.g., blockchain 115). In one embodiment, an NFT can be generated when the blockchain 115 concatenates a cryptographic hash (i.e., a set of characters used to verify that a set of data is unique) record to a previous record to create a chain of identifiable data blocks. This encrypted transaction process ensures that each digital file is authenticated by providing a digital signature for tracking NFT ownership.
[0036] In one embodiment, an NFT is a non-fungible cryptographic asset that can be declared in a standard token format and can have a unique set of properties. In one example embodiment, an NFT can be a digital asset with a unique identifier that is stored on the blockchain 115 and is non-fungible. In another example embodiment, an NFT can be a digital representation of a real-world object or a tradable right to a digital asset, such as a picture, virtual creation, audio, and other types of digital files, where ownership can be recorded in a blockchain smart contract. In one embodiment, NFTs can be tracked on the blockchain 115 to provide proof of ownership to the owner.
[0037] In one embodiment, the database 117 may be any type of database, such as a relational, hierarchical, object-oriented, and / or similar database, wherein data is organized in any suitable manner, including as a data table or a lookup table. In one embodiment, the database 117 may store and manage a variety of types of information that may assist in the content provision and sharing process. In an embodiment, the database 117 may include a machine learning-based training database having predefined mappings that define relationships between various input parameters and output parameters based on various statistical methods. In one embodiment, the training database may include a machine learning algorithm for learning mappings between input parameters associated with a user, such as, but not limited to, financial transaction information, online activity information, historical user information and interests, contextual information, and the like. In one embodiment, the training database may include a data set that may include non-subject-specific data collection, i.e., data collection based on population-wide observations, local, regional, or supra-regional observations, and the like. Exemplary data sets include retail data, market data, geographic data, business information, financial information, and the like. In one embodiment, the training database may be routinely updated and / or supplemented based on machine learning methods.
[0038] For example, the UE 103, the issuer 109, the identity authentication platform 113, and the blockchain 115 may communicate with each other and with other components of the communication network 111 using well-known, new, or still-developing protocols. In this case, the protocol includes a set of rules that define how the network nodes in the communication network 111 interact with each other based on the information sent on the communication links. The protocol has effectiveness at different operational layers within each node, from generating and receiving various types of physical signals, to selecting links for transmitting these signals, to the format of the information represented by these signals, to determining which software application executed on the computer system sends or receives the information. In the Open Systems Interconnection (OSI) reference model, the conceptually different protocol layers for exchanging information on the network are described.
[0039] Typically, communication between network nodes is achieved by exchanging discrete data packets. Each data packet typically includes: (1) header information associated with a specific protocol; (2) payload information following the header information, which contains information that can be processed independently of the specific protocol. In some protocols, the data packet includes: (3) trailer information following the payload that indicates the end of the payload information. The header includes information such as the source of the data packet, its destination, the length of the payload, and other properties used by the protocol. Typically, the data in a specific protocol payload includes headers and payloads of different protocols associated with different upper layers of the OSI reference model. The header of a specific protocol typically indicates the type of the next protocol contained in its payload. It is said that the upper layer protocol is encapsulated in the lower layer protocol. The headers contained in a data packet that traverses multiple heterogeneous networks (such as the Internet) typically include a physical (layer 1) header, a data link (layer 2) header, an internetwork (layer 3) header, and a transport (layer 4) header, as well as various application (layer 5, layer 6, and layer 7) headers defined by the OSI reference model.
[0040] Figure 2 is a schematic diagram of components of the identity authentication platform 113 and blockchain 115 according to an example embodiment. Terms such as "component" or "module" used in the present invention generally include hardware and / or software, such as hardware and / or software that can be used by a processor or similar device to implement related functions. For example, the identity authentication platform 113 includes one or more components for generating blockchain-based dynamic NFTs for user authentication. It is foreseeable that the functions of these components can be combined into one or more components, or performed by other components with equivalent functions. In one embodiment, the identity authentication platform 113 includes a data collection module 201, a registration module 203, a tokenization module 205, a training module 207, a machine learning module 209, a user interface module 211 and a digital wallet module 213 or any combination thereof.
[0041] In one embodiment, the data collection module 201 can automatically collect relevant data associated with the user 101 through various data collection techniques. In an example embodiment, the data collection module 201 can use a web crawler component to access various databases such as the database 117, the blockchain 115, or other information sources to collect relevant data associated with the user 101, such as personal information, financial information, contextual information, etc. The data collection module 201 may include various software applications, such as data mining applications in an extended meta-language (XML), which can automatically search and return relevant information about the user 101. The data collection module 201 can parse and organize the data into a common format so that other modules and platforms can easily process it. In another embodiment, the data collection module 201 can collect a video or one or more images of the user 101 from a sensor 107 (e.g., an image sensor, a camera, etc.) in real time or near real time to collect biometric data such as fingerprints and facial images.
[0042] In one embodiment, the registration module 203 may authenticate and register the user 101 and the UE 103 for one or more services. In one example embodiment, the authentication and registration may include an initial registration process for establishing a user profile, for example, the system requests the user 101 to provide various data for identification purposes. During the registration process with the service provider, the registration module 203 may receive user credentials from the user 101. The registration module 203 may authenticate the user credentials through various authentication mechanisms. In one embodiment, the authentication may be performed through the automatic association of the blockchain 115 and the database 117 with the IP address, the carrier detection signal of the UE 103, the mobile directory number (MDN), the subscriber identity module (SIM) (e.g., a SIM card), a radio frequency identification code (RFID) tag, or other device identification code. These authentication methods may reduce privacy issues associated with data sharing services. The registration module 203 may register the UE 101 and the UE 103 after successful authentication. In another embodiment, the registration module 203 may include logic that may determine whether the user 101 is qualified based at least in part on historical user information. In one example, historical user information may include credit history information, income information, debt-to-income ratio information, online fraud information, criminal information, and the like.
[0043] In one embodiment, the registration module 203 may transmit user credential information (e.g., biometric data, financial data, or any other sensitive information) to the tokenization module 205. The tokenization module 205 may tokenize the user credential information by replacing the sensitive information with a cryptographically generated token that is not related to the sensitive information. The tokenization module 205 may generate (e.g., mint) any type of token, such as an NFT, a low-value token, a high-value token, a randomly generated number, a pseudo-random number, or other character sequence. In one embodiment, the token is a one-time token, a multiple-use token, and / or an irreversible token. In one embodiment, the tokenization module 205 may implement various mechanisms to generate these tokens, such as a mathematically reversible encryption function with a key, a non-reversible function such as a hash function, an exponential function, or a randomly generated number.
[0044] In one embodiment, the tokenization module 205 may hash the token using a cryptographic hash function. In another embodiment, the tokenization module 205 may encrypt the token so that it cannot be accessed by unauthorized parties (such as attackers). Encryption may be defined as the process of converting data into encrypted data using an algorithm (such as a password) that cannot be read by anyone except those who have the password (such as a key). In one embodiment, the tokenization module 205 may implement a symmetric encryption algorithm mechanism, an asymmetric encryption algorithm mechanism, or any other known encryption algorithm mechanism to encrypt the token.
[0045] In one embodiment, the training module 207 can provide supervised learning to the machine learning module 209 by providing training data including inputs and correct outputs, so that the machine learning module 209 can learn over time. When the input is fed to the machine learning module 209, it can be trained based on the deviation of the processed results from the recorded results, for example, the algorithm measures its accuracy through a loss function and adjusts it until the error is sufficiently minimized. In one embodiment, the training data may include user credentials, such as sample biometric data, sample image data, sample video data, sample credential data, etc. Therefore, each set of training data may include sample biometric data, sample image data, sample video data, and sample credential data for training the machine learning module 209 to authenticate the user 101, and / or encode the sample data as an NFT and store it in the blockchain 115. The training module 207 can be trained in any suitable manner (e.g., in batches) and may include any suitable training method. Training can be performed periodically and / or continuously (e.g., in real time or near real time).
[0046] In one embodiment, the machine learning module 209 may receive training data from the training module 207. The machine learning module 209 may randomize the order of the training data, visualize the training data to identify correlations between different variables, identify any data imbalance, and divide the training data into two parts, one of which is used for training the model and the other is used for validating the training model, de-duplication, normalization, correcting errors in the training data, etc. The machine learning module 209 may implement various machine learning techniques, such as decision tree learning, association rule learning, neural networks (e.g., recursive neural networks, convolutional neural networks, deep neural networks), inductive programming logic, support vector machines, Bayesian models, etc. In another embodiment, the machine learning module 209 may classify the training data using one or more trained classification models, and / or predict the results based on the training data using one or more trained prediction models. For example, the machine learning module 209 may input the training data into the classification model and / or the prediction model to authenticate the user 101 and / or encode the sample data as an NFT to be stored in the blockchain 115. The machine learning module 209 may use the results.
[0047] In one embodiment, the user interface module 211 may display a graphical user interface (GUI) in the UE 103. The user interface module 211 may use various application programming interfaces (APIs) or other function calls corresponding to the applications 105 on the UE 103 to enable the display of graphical primitives such as icons, menus, buttons, data entry fields, etc. In another embodiment, the user interface module 211 may enable the navigation information to interact with the user 101 to at least partially include one or more annotations, audio messages, video messages, or a combination thereof. In an example embodiment, the user interface module 211 may display a login widget in the UE 103, which may be linked to a computing system of a service provider (e.g., issuer 109). The user interface module 211 may ensure that the login widget is unique so that it can be identified by the user 101 and is unobtrusive to avoid any negative experience for the user when registering for the service. In a further example embodiment, the user interface module 211 may include various interfaces, such as interfaces for data input and output devices called I / O devices, storage device interfaces, etc. Furthermore, the user interface module 211 may operate in conjunction with augmented reality (AR) processing techniques, wherein various applications, graphical elements, and functions may interact.
[0048] In one embodiment, the digital wallet module 213 may provide digital wallet services to the user 101, such as proposing to register for a digital wallet service, exchanging NFTs stored in a digital wallet, using a digital wallet service for payment, etc. In one embodiment, the issuer 109 may integrate the digital wallet interface provided by the digital wallet module 213 so as to display the digital wallet interface on a web browser or UE 103 associated with the user 101 or a service provider (e.g., a merchant). In one example, the user 101 may use the digital wallet interface to conduct various e-commerce transactions.
[0049] In one embodiment, the blockchain 115 includes an encoder / decoder 215, a ledger query and update server 217, a smart contract 219, or any combination thereof. In one embodiment, the blockchain 115 may encrypt the data stored in the blockchain 115 through the encoder / decoder 215 to provide security and / or protect sensitive information. In certain embodiments, the latest data stored in the blockchain 115 may be retrieved periodically or continuously by the authentication platform 113 so that the relevant parties such as the user 101 can access the latest data through the UE 103. In such embodiments, the blockchain 115 may decode the data stored in the blockchain 115 through the encoder / decoder 215. The embodiments of the encoder / decoder 215 are not limited to these examples, and may also include other suitable functions in other embodiments.
[0050] In one embodiment, the ledger query and update server 217 may be one or more of an application, an application program interface, software, hardware, a server, or a protocol that allows data, such as new attributes or detailed information about transaction attributes, to be added to the blockchain 115. In some embodiments, the ledger query and update server 217 may further enable accessing or retrieving data of any transaction information attribute from the blockchain 115. In one embodiment, the ledger query and update server 217 may respond to requests to add a transaction attribute, to dispute one or more of previously published transaction attribute data, to add a proposed modification to an existing transaction attribute (e.g., to raise a dispute) or to data of an existing transaction attribute, and / or to search for or retrieve detailed information about a transaction attribute (e.g., data stored for the attribute).
[0051] In one embodiment, the smart contract 219 can be one or more of an application, an application program interface, software, hardware, a server, or a computerized transaction protocol for facilitating, verifying, and / or enforcing the negotiation or performance of a contract. In various embodiments described in the present invention, the contract can regulate transactions between the user 101 and the issuer 109. In one embodiment, the identity authentication platform 113 can provide a simplified KYC process for the user 101 and the issuer 109 through smart contract interaction.
[0052] The above-mentioned identity authentication platform 113 modules and components can be implemented in hardware, firmware, software or a combination thereof. Figure 2 103, but it is foreseeable that the identity authentication platform 113 can be implemented so as to be directly operated by the respective UE 103. Therefore, the identity authentication platform 113 can generate direct signal input through the operating system of the UE 103. In another embodiment, one or more of the modules 201-213 can be implemented as the identity authentication platform 113 or a combination thereof so as to be operated by the respective UE. The various implementation modes proposed in the present invention foresee any and all arrangements and models.
[0053] Figure 3 300 is a flowchart of a process for generating a blockchain-based dynamic NFT for user authentication according to an example embodiment. In various embodiments, the authentication platform 113 and / or any of the modules 201-213 may perform one or more parts of the process 300 and may be implemented in a chipset including a processor and a memory, such as Figure 7 Thus, the identity authentication platform 113 and / or any of the modules 201-213 may provide a method for completing various parts of the process 300, and a method for completing other process embodiments described in the present invention in combination with other components of the system 100. Although the process 300 is shown and described as a series of steps, it is foreseeable that various embodiments of the process 300 may be performed in any order or combination, and need not include all of the illustrated steps.
[0054] In step 301, the authentication platform 113 may receive a request from a UE 103 (eg, a mobile device) associated with a user 101. In an example embodiment, the user 101 may send a request to the authentication platform 113 to register for an online service, such as creating a user profile to access banking services.
[0055] In step 303, the authentication platform 113 may capture images and / or videos of the user 101, identification data associated with the user 101, or a combination thereof via the sensor 107. In one example embodiment, the sensor 107 (e.g., a camera of the UE 103) may capture a series of images and / or videos of the user 101, such as the face of the user 101. In another example embodiment, the sensor 107 may capture images and / or videos of identification data associated with the user 101, such as a driver's license, a passport, or any other identification document. In one embodiment, the authentication platform 113 may verify the orientation of the UE 103, the proximity of the UE 103 to the user 101, or a combination thereof, via the sensor 107, based at least in part on a threshold level. Upon determining that the orientation of the UE 103, the proximity of the UE 103 to the user 101, or a combination thereof has exceeded the threshold level, the authentication platform 113 may generate a notification in the user interface of the UE 103.
[0056] In another example embodiment, the sensor 107 may receive personal information of the user 101, such as location information, bank account information, or any personal information, etc., through the user interface of the UE 103. In another example embodiment, the sensor 107 (such as a biometric sensor) may receive biometric data of the user 101.
[0057] In step 305, the authentication platform 113 may process the image and / or video to detect biometric data unique to the user 101. In one embodiment, the biometric data includes iris patterns, eye color, facial details, hand geometry, fingerprints, or a combination thereof. In one example embodiment, the authentication platform 113 may process the captured image to detect facial details unique to the user 101. In another example embodiment, the authentication platform 113 may process the received biometric data to detect fingerprints unique to the user 101. In another example embodiment, the authentication platform 113 may process the received identification data to detect confidential data unique to the user 101.
[0058] In step 307, the identity authentication platform 113 may encode the detected biometric data to generate a dynamic NFT. In one embodiment, encoding the detected biometric data may include: (i) cryptographically hashing each detected biometric data, (ii) concatenating each hashed biometric data in a predefined order, (iii) generating and storing a singular hash representing the concatenated single hash, and (iv) generating a dynamic NFT representing the singular hash. In one embodiment, the identity authentication platform 113 may mint a dynamic NFT on a distributed blockchain 115. In one embodiment, minting an NFT may include verifying the NFT, creating a new block, and recording the NFT in the blockchain 115. The NFT may be recorded in the blockchain through a "proof of stake" protocol. Proof of stake is a blockchain consensus mechanism used to verify online transactions, such as cryptocurrency transactions.
[0059] In step 309, the identity authentication platform 113 may store the dynamic NFT on a transaction block of the distributed blockchain 115. The identity authentication platform 113 may receive a blockchain address and a verification of the transaction block recorded in the distributed blockchain 115. The identity authentication platform 113 may monitor the distributed blockchain 115 and transactions on the distributed blockchain that match the distributed blockchain 115 address in real time or near real time. In one embodiment, the identity authentication platform 113 may save the dynamic NFT in a first digital wallet of the blockchain network, wherein the first digital wallet may generate a private key. In one embodiment, the dynamic NFT may be associated with a programmatically defined smart contract written to the distributed blockchain 115.
[0060] In one embodiment, the identity authentication platform 113 may update metadata associated with at least one dynamic NFT based at least in part on the monitoring. The identity authentication platform 113 may generate a new dynamic NFT based at least in part on the updated metadata. The identity authentication platform 113 may connect the new dynamic NFT in a predefined order, wherein the predefined order includes connecting the new dynamic NFT to a previous dynamic NFT on a transaction block of the distributed blockchain 115.
[0061] In step 311, the identity authentication platform 113 may transmit or exchange the dynamic NFT to multiple service providers, such as the issuer 109 or the merchant, for authenticating the user 101. In one embodiment, the identity authentication platform 113 may receive a second request for processing the dynamic NFT on the transaction block of the distributed blockchain 115 from the user 101 via the UE 103, wherein the second request includes transmitting the dynamic non-fungible token to the multiple service providers. The identity authentication platform 113 may transmit the dynamic non-fungible token from the first digital wallet to the second digital wallet of the blockchain network, wherein the second digital wallet is associated with the multiple service providers. In one embodiment, the at least one second request identifies the dynamic non-fungible token by content identification, path identification, or a combination thereof.
[0062] Figures 4A-4M is a user interface diagram showing a simple one-time registration process for an online service according to an example embodiment. Although the user interface diagrams are shown and described in sequence, it is contemplated that the various embodiments of these diagrams may be performed in any order or combination, and not all illustrated sequences need be included. In this example embodiment, a user is registering for an online banking service, but it should be understood that a user may register for any online service.
[0063] Figure 4A The main input screen of an online service (e.g., online financial services of Bank A) is shown. Input screen 401 may include multiple icons that can be called to perform different functions. In one embodiment, user 101 may see user interface element 403 requesting login credentials. In one example embodiment, new user 101 may choose to register for online financial services by interacting with user interface element 403, at which point new user 101 navigates to Figure 4B In another example embodiment, a registered user 101 may enter their credentials and may navigate to Figure 4B , to simplify their login process.
[0064] exist Figure 4B In the example, screen 405 may include user interface element 407, such as a KYC registration tab. User 101 may select ID Oracle tab 409 from user interface element 407 to initiate the KYC registration process, at which point user 101 may be directed to Figure 4C Screen 411 may include a user interface element 413 for using an existing token or initiating a token minting. In this example, user 101 selects to mint a token by selecting user interface element 415. The user then navigates to Figure 4D 417 to authenticate the user.
[0065] exist Figure 4DIn the example, screen 417 generates notification 419, requiring user 101 to scan a QR code or enter a phone number. In this example, the user can use UE 103 (such as Figure 4E In one embodiment, the QR code is scanned by a sensor 107 (e.g., a camera) of the user 101, and the user 101 can navigate to a website to authorize the registration process. In another example, the user 101 can enter a phone number, and the user 101 can receive a URL as a text message. The user 101 can tap the URL to approve the registration process. It should be understood that any other verification mechanism can be used.
[0066] exist Figure 4F , display screen 421 may generate a notification requesting access to the current location of user 101. User 101 may grant access to the location information by clicking on user interface element 423. In one embodiment, the user's current location may be used for future location-based authentication, for example, authentication platform 113 may compare the future location of user 101 with this stored location.
[0067] Figure 4G and 4H is a schematic diagram of a user interface, showing instructions to the user 101 to properly align an ID card (e.g., a driver's license) within the display screens 425 and 427 of the UE 103. Once the user 101 aligns the ID card within the display screens 425 and 427, a camera or webcam pointed at the ID card can capture an image or video of the ID card.
[0068] Fig. 4I and 4J is a user interface diagram illustrating instructions to user 101 to position their face in certain positions while a camera or webcam captures multiple images or videos of the user's face. In an exemplary embodiment, UE 103 may instruct the user to move their head to precise positions, or simply ask the user to imitate the movements shown to the user on display screens 429 and 431. In an exemplary embodiment, the identity authentication platform 113 may run a face detection algorithm to analyze the image data or video data to ensure that the user's face is captured correctly. When interference or occlusion is determined in the image or video, the identity authentication platform 113 may generate an alert requiring user 101 to reacquire a new set of images or videos. Once all registration requirements are completed, user 101 will receive a notification that the token has been minted, and the user can use the token for any future transactions with any participating service provider (such as Figure 4K433 in the display). In one embodiment, the identity authentication platform 113 having one or more modules 201-213 can process the location data, identification data, and biometric data of the user 101 to generate a blockchain-based dynamic NFT for user identity authentication. For example, the identity of the user 101 can be stored as an NFT on a private blockchain, so that the issuer 109 does not need to store, process, and maintain it on its own infrastructure. If the user's identity information changes, the NFT can be dynamically updated by the user. With this dynamic refresh, the issuer 109 can meet regulatory requirements.
[0069] In one embodiment, once the identity authentication platform 113 generates the NFT and stores it in the blockchain 115, the service provider (e.g., bank A) can request user 101 to access the blockchain wallet (e.g., digital wallet), which includes the stored NFT. As shown, the pop-up window 435 in the right corner of the user interface 437 can be a blockchain wallet in the form of a browser extension. In one example, a wallet access request can also be made through the application 105 in the UE 103. In one embodiment, the user 101 can grant access rights to the blockchain wallet, and the service provider can perform token verification. Once bank A successfully verifies the NFT, the identity of user 101 can be verified. After the wallet authorization and NFT verification are successful, a prompt will appear. Figure 4M Display screen 439 in. Once the NFT is successfully verified, a simple and secure login process can be provided for all future transactions between user 101 and bank A.
[0070] Figures 5A-5F is a user interface diagram showing a scenario in which different service providers authenticate a user using previously generated blockchain-based dynamic NFTs according to an example embodiment. Although the user interface diagrams are shown and described in sequence, it is foreseeable that the various embodiments of these diagrams may be performed in any order or combination, and not all illustrated sequences need to be included. In this example embodiment, the user is registering for an online banking service, but it should be understood that the user can register for any online service.
[0071] Figure 5AThe main input screen for the bank-related services of Bank B is displayed. The input screen 501 may display a user interface element 503, which may request to obtain the login credentials of the returned user or the registration request of the potential user. In one embodiment, when user 101 attempts to access the services of Bank B, the identity authentication platform 113 may notify Bank B that user 101 has a blockchain-based NFT as a means of verification. For example, the identity authentication platform 113 may notify a member service provider to perform blockchain-based NFT verification on user 101 in real-time, near real-time, on a schedule, etc. In another embodiment, the identity authentication platform 113 may process historical information of user 101 (e.g., online activities) to identify a target service provider, and may remind the identified service provider to perform blockchain-based NFT verification on user 101.
[0072] In one embodiment, Bank B can use the previously generated blockchain-based NFT to authenticate the identity of User 101. Bank B can navigate User 101 to Figure 5B The display screen 505. Figure 5B In the example, screen 505 may include user interface element 507, such as a KYC registration tab. User 101 may select ID Oracle tab 509 from user interface element 507 to initiate an NFT-based identity authentication process. User 101 is then directed to Figure 5C Screen 511 may include a user interface element 513 for using an existing token or initiating token minting. In this example, user 101 may choose to use an existing token by selecting user interface element 515.
[0073] The user 101 may be directed to Figure 5D Display screen 517. Display screen 517 may include multiple icons that can be called to perform different token-related functions. For example, user 101 can select wallet icon 519 to check the token history, such as the date and time NFT was created, the date and time NFT was updated with additional personal data, the entities or service providers that have access to the NFT, etc. (as shown in user interface 521). User 101 can also select token ID label 523 to update the token, for example, replace an expired ID with a newly issued ID, upload a new biometric facial scan or fingerprint, etc. With dynamic NFTs, relevant data can be updated at any time, and user 101 can be provided with full control over their personal data. Once user 101 verifies that the information related to the token is accurate and up-to-date, user 101 can authorize bank B to access the blockchain wallet.
[0074] As shown in the figure, Figure 5EThe pop-up window 525 in the right corner of the user interface 527 can be a blockchain wallet in the form of a browser extension. In one example, a wallet access request can also be made through the application 105 in the UE 103. In this embodiment, the user 101 can grant access to the blockchain wallet and the bank B can verify the token. Basically, the user can control how his token is used through his wallet. Once the bank A successfully verifies the NFT, the identity of the user 101 can be verified. After the wallet authorization and NFT verification are successful, the Fig. 5F Display screen 529 in.
[0075] As shown in the figure, the blockchain-based dynamic NFT can be used by multiple service providers (such as Bank A and Bank B) to authenticate the user. This application of the blockchain-based KYC solution stores user identity information as a dynamic NFT, ensuring that the user onboarding process can be completed smoothly, for example, reducing the KYC process to two clicks, thereby reducing the user abandonment rate. At the same time, the use of blockchain technology will also greatly reduce the risk of personal data leakage.
[0076] One or more embodiments of the present disclosure may include a machine learning model (e.g., machine learning module 209) and / or may be implemented using a machine learning model. For example, one or more modules of the identity authentication platform 113 may be implemented using a machine learning model and / or may be used to train a machine learning model. Figure 6 The training data 612 may include one or more stage inputs 614 and known results 618 associated with the machine learning model to be trained. The stage inputs 614 may come from any suitable source, including text, visual representations, data, values, comparisons, stage outputs (e.g., from Figure 3 For machine learning models generated based on supervised or semi-supervised training, known results 618 may be included. Unsupervised machine learning models may not be trained using known results 618. Known results 618 may include known or expected outputs for future inputs that are similar or of the same class as stage input 614, for which there is no corresponding known output.
[0077] The training component 630 may be provided with training data 612 and a training algorithm 620 (e.g., one or more modules implemented using a machine learning model and / or modules that can be used to train a machine learning model), and the training component 630 may apply the training data 612 to the training algorithm 620 to generate a machine learning model. According to an embodiment, the training component 630 may be provided with a comparison result 616, which compares the previous output of the corresponding machine learning model, so as to retrain the machine learning model using the previous results. The training component 630 may use the comparison result 616 to update the corresponding machine learning model. The training algorithm 620 may use a machine learning network and / or model, including but not limited to a deep learning network (such as a deep neural network (DNN), a convolutional neural network (CNN), a fully convolutional network (FCN), and a recurrent neural network (RCN)), and may use a probabilistic model (such as a Bayesian network and a graphical model) and / or a discriminant model (such as a decision forest and a maximum margin method or similar methods).
[0078] The machine learning model used in the present invention can be trained and / or used by adjusting one or more weights and / or one or more layers of the machine learning model. For example, during training, a given weight can be adjusted (e.g., increased, decreased, or removed) based on training data or input data. Similarly, layers can be updated, added, or removed based on training data and / or input data. The output generated thereby can be adjusted based on the adjusted weights and / or layers.
[0079] Any process or operation discussed in this disclosure can generally be understood as a computer-implemented process or operation (e.g. Figure 3 The process shown in the figure can be performed by one or more processors of the computer system described in the present invention. The process or process steps performed by one or more processors can also be referred to as operations. One or more processors can execute such processes by accessing instructions (such as software or computer readable code), which, when executed by one or more processors, causes one or more processors to execute the process. The instructions can be stored in the memory of the computer system. The processor can be a central processing unit (CPU), a graphics processing unit (GPU), or any suitable type of processor.
[0080] A computer system, such as a system or device that implements the processes or operations in the above examples, may include one or more computing devices. One or more processors of a computer system may be included in a single computing device, or distributed across multiple computing devices. One or more processors of a computer system may be connected to a data storage device. The memory of a computer system may include a memory of each computing device in a plurality of computing devices.
[0081] Figure 7The implementation of a general computer system that can perform the techniques described in the present invention is shown. The computer system 700 may include a set of instructions that, when executed, may cause the computer system 700 to perform any one or more of the methods or computer-based functions disclosed in the present invention. The computer system 700 may operate as a standalone device or may be connected to other computer systems or peripheral devices using a network or other means.
[0082] Unless otherwise specifically stated, as will be apparent from the discussion below, throughout the specification, it should be understood that the terms "processing," "computing," "calculating," "determining," "analyzing," or similar terms refer to the operations and / or processes of a computer or computing system or similar electronic computing device that manipulate and / or convert data represented by physical quantities (such as electronic quantities) into other data also represented by physical quantities.
[0083] Likewise, the term "processor" may refer to any device or portion of a device that processes electronic data, e.g., processes electronic data from registers and / or memory, transforms electronic data into other electronic data, e.g., other electronic data that may be stored in registers and / or memory. A "computer," "computing machine," "computing platform," "computing device," or "server" may include one or more processors.
[0084] In a network deployment, the computer system 700 can operate as a server, or as a client user computer in a server-client user network environment, or as a peer computer system in a peer-to-peer (or distributed) network environment. The computer system 700 can also be implemented as a variety of devices, or integrated into a variety of devices, such as a personal computer (PC), a tablet computer, a set-top box (STB), a personal digital assistant (PDA), a mobile device, a palmtop, a laptop, a desktop computer, a communication device, a wireless phone, a landline phone, a control system, a camera, a scanner, a fax machine, a printer, a pager, a personal trusted device, a World Wide Web device, a network router, a switch or a bridge, or any other machine capable of executing a set of instructions (sequential instructions or other instructions). In a specific embodiment, the computer system 700 can be implemented using an electronic device that provides voice, video or data communication. In addition, although the computer system 700 is shown as a single system, the term "system" should also be considered to include a collection of any systems or subsystems that can execute one or more sets of instructions individually or together to perform one or more computer functions.
[0085] like Figure 7As shown, computer system 700 may include a processor 702, such as a central processing unit (CPU), a graphics processing unit (GPU), or both. Processor 702 may be a component in various systems. For example, processor 702 may be part of a standard personal computer or workstation. Processor 702 may be one or more general-purpose processors, digital signal processors, application-specific integrated circuits, field programmable gate arrays, servers, networks, digital circuits, analog circuits, combinations thereof, or other data analysis and processing devices now known or later developed. Processor 702 may execute software programs, such as manually generated (i.e., programmed) code.
[0086] The computer system 700 may include a memory 704 that can communicate via a bus 708. The memory 704 may be a main memory, a static memory, or a dynamic memory. The memory 704 may include, but is not limited to, computer-readable storage media, such as various types of volatile and non-volatile storage media, including but not limited to random access memory, read-only memory, programmable read-only memory, electrically programmable read-only memory, electrically erasable read-only memory, flash memory, tape or disk, optical media, etc. In one embodiment, the memory 704 includes a cache or random access memory of the processor 702. In an alternative embodiment, the memory 704 is separated from the processor 702 (e.g., a cache memory of the processor, a system memory, or other memory). The memory 704 may be an external storage device or database for storing data. Examples include a hard drive, a compact disk ("CD"), a digital video disk ("DVD"), a memory card, a memory stick, a floppy disk, a universal serial bus ("USB") storage device, or any other device that can be used to store data. The memory 704 can be used to store instructions executable by the processor 702. The functions, actions, or tasks shown in the figures or described herein may be performed by the processor 702 executing instructions stored in the memory 704. These functions, actions, or tasks are independent of the specific type of instruction set, storage medium, processor, or processing strategy, and may be performed by software, hardware, integrated circuits, firmware, microcode, etc., alone or in combination. Likewise, processing strategies may include multi-processing, multi-tasking, parallel processing, etc.
[0087] As shown, the computer system 700 may further include a display 710, such as a liquid crystal display (LCD), an organic light emitting diode (OLED), a flat panel display, a solid state display, a cathode ray tube (CRT), a projector, a printer, or other display devices known now or developed later for outputting determined information. The display 710 may be used as an interface for a user to view the operation of the processor 702, or specifically as an interface with software stored in the memory 704 or the drive unit 706.
[0088] Additionally or alternatively, the computer system 700 may also include an input / output device 712 that allows a user to interact with any component of the computer system 700. The input / output device 712 may be a numeric keypad, a keyboard, or a cursor control device such as a mouse, a joystick, a touch screen display, a remote control, or any other device that interacts with the computer system 700.
[0089] The computer system 700 may also include or alternatively include a drive unit 706 implemented as a disk or optical drive. The drive unit 706 may include a computer-readable medium 722, in which one or more sets of instructions 724, such as software, may be embedded. In addition, the instructions 724 may embody one or more methods or logic described in the present invention. During execution by the computer system 700, the instructions 724 may be completely or partially located in the memory 704 and / or the processor 702. As described above, the memory 704 and the processor 702 may also include computer-readable media.
[0090] In some systems, the computer-readable medium 722 includes instructions 724, or receives and executes instructions 724 in response to propagation signals, so that devices connected to the network 730 can communicate voice, video, audio, images, or any other data through the network 730. In addition, instructions 724 can be transmitted or received on the network 730 through the communication port or interface 720 and / or using the bus 708. The communication port or interface 720 can be part of the processor 702 or a separate component. The communication port or interface 720 can be created in software or can be a physical connection in hardware. The communication port or interface 720 can be connected to the network 730, external media, display 710, or any other component or combination thereof in the computer system 700. The connection to the network 730 can be a physical connection, such as a wired Ethernet connection, or a connection can be established wirelessly, as described below. Similarly, additional connections to other components of the computer system 700 can be physical connections or can be established wirelessly. The network 730 can alternatively be directly connected to the bus 708.
[0091] Although the computer-readable medium 722 is shown as a single medium, the term "computer-readable medium" may include a single medium or multiple media, such as a centralized or distributed database, and / or associated caches and servers storing one or more sets of instructions. The term "computer-readable medium" may also include any medium capable of storing, encoding, or carrying a set of instructions that can be executed by a processor or cause a computer system to perform any one or more methods or operations disclosed in the present invention. The computer-readable medium 722 may be a non-transitory computer-readable medium or a tangible computer-readable medium.
[0092] The computer readable medium 722 may include a solid-state memory, such as a memory card or other package containing one or more non-volatile read-only memories. The computer readable medium 722 may be a random access memory or other volatile rewritable memory. In addition or alternatively, the computer readable medium 722 may include a magneto-optical medium or an optical medium, such as a disk, a tape, or other storage device, for capturing a carrier signal, such as a signal conveyed by a transmission medium. A digital file attachment to an e-mail or other independent information archive or archive collection may be considered a distribution medium, i.e., a tangible storage medium. Accordingly, the present disclosure may be considered to include any one or more of a computer readable medium or a distribution medium and other equivalent media and successor media that can be used to store data or instructions.
[0093] In alternative embodiments, dedicated hardware implementations, such as application specific integrated circuits, programmable logic arrays, and other hardware devices, may be constructed to implement one or more of the methods described herein. Applications of the apparatus and systems that may include various implementations may broadly include a variety of electronic and computer systems. One or more implementations described herein may utilize two or more specific interconnected hardware modules or devices to implement functionality, which employ associated control and data signals that may be communicated between or through modules, or as part of an application specific integrated circuit. Accordingly, the system includes software, firmware, and hardware implementations.
[0094] Computer system 700 may be connected to network 730. Network 730 may define one or more networks, including wired or wireless networks. A wireless network may be a cellular telephone network, an 802.11, 802.16, 802.20, or WiMAX network. In addition, such networks may also include public networks (such as the Internet), private networks (such as intranets), or combinations thereof, and may utilize various existing or later developed network protocols, including but not limited to TCP / IP-based network protocols. Network 730 may include a wide area network (WAN) (such as the Internet), a local area network (LAN), a campus network, a metropolitan area network, a direct connection (such as through a universal serial bus (USB) port), or any other network capable of data communication. Network 730 may couple one computing device to another computing device to enable data communication between devices. Network 730 may generally employ any form of machine-readable media for conveying information from one device to another. Network 730 may include a communication method for transmitting information between computing devices. Network 730 may be divided into multiple subnetworks. A subnetwork may allow access to all other components connected to it, or restrict access between components. Network 730 may be considered a public or private network connection and may include, for example, a virtual private network or encryption or other security mechanisms used over the public Internet.
[0095] According to various embodiments of the present disclosure, the methods described in the present disclosure may be implemented by a software program executable by a computer system. In addition, in an exemplary, non-limiting embodiment, the embodiments may include distributed processing, component / object distributed processing, and parallel processing. Alternatively, a virtual computer system process may be constructed to implement one or more methods or functions described in the present invention.
[0096] Although this specification describes components and functions that can be implemented in specific embodiments with reference to specific standards and protocols, the disclosure is not limited to such standards and protocols. For example, Internet and other packet-switched network transmission standards (e.g., TCP / IP, UDP / IP, HTML, HTTP) are examples of the state of the art. Such standards are periodically replaced by equivalent standards that have substantially the same functionality, are faster, or are more efficient. Accordingly, alternative standards and protocols that have the same or similar functionality as the standards and protocols disclosed in the present invention may be considered equivalent standards and protocols thereof.
[0097] It should be understood that in one embodiment, the method steps are performed by an appropriate processor (or multiple processors) of a processing (i.e., computer) system by executing instructions (computer readable code) stored in a memory. It should also be understood that the present disclosure is not limited to any specific implementation or programming technology, and the present disclosure can be implemented using any appropriate technology to achieve the functions described in the present invention. The present disclosure is not limited to any specific programming language or operating system.
[0098] It should be understood that in the above description of exemplary embodiments of the present invention, in order to simplify the disclosure and help to understand one or more different aspects of the invention, various features of the present invention are sometimes grouped together in one embodiment, figure or description. However, this disclosure method should not be interpreted as reflecting an intention that the claimed invention requires more features than those explicitly set forth in each claim. On the contrary, as described in the following claims, the inventiveness of the present invention lies in not fully including all the features of the aforementioned single disclosed embodiment. Therefore, the claims following the detailed description are hereby expressly incorporated into this detailed description, and each claim stands on its own as a separate embodiment of the present invention.
[0099] In addition, those skilled in the art will appreciate that although some embodiments described herein include some features but do not include other features included in other embodiments, the combination of features of different embodiments all fall within the scope of the present invention and form different embodiments. For example, in the following claims, any claimed embodiment may be used in any combination.
[0100] In addition, in the present invention, some embodiments are described as a method or a combination of elements of a method, which can be implemented by a computer system processor or other means for performing the function. Therefore, a processor that uses the necessary instructions to perform this method or method element constitutes a means for performing this method or method element. In addition, an element of the device embodiment of the present invention is an example of a means for performing a function, and the function is performed by the element to implement the present invention.
[0101] Many specific details are described in the description provided by the present invention. However, it should be understood that embodiments of the present invention can be implemented without these specific details. In other cases, well-known methods, structures and techniques have not yet been shown in detail in order not to affect the understanding of this description.
[0102] Therefore, although the present invention has been described with respect to embodiments that are considered to be preferred embodiments of the present invention, those skilled in the art will recognize that other and further modifications may be made to the present invention without departing from the spirit of the present disclosure, and those skilled in the art intend that all such changes and modifications be included within the scope of the present invention. For example, any formula given above merely represents a procedure that may be used. Functions may be added or deleted from the block diagrams, and operations may be interchanged between functional blocks. Steps of the method may be added or deleted within the scope of the present invention.
[0103] The above disclosed subject matter may be considered as illustrative subject matter rather than restrictive subject matter, and the attached claims are intended to cover all such modifications, enhancements and other embodiments that fall within the true spirit and scope of the present disclosure. Therefore, to the maximum extent permitted by law, the scope of the present disclosure shall be determined according to the broadest interpretation of the following claims and their equivalents, and shall not be restricted or limited by the above-mentioned specific embodiments. Although various embodiments of the present disclosure have been described, it is obvious to those of ordinary skill in the art that there may be more embodiments within the scope of the present disclosure. Accordingly, the present disclosure is not subject to any restrictions except for the attached claims and their equivalents.
Claims
1. A system for generating dynamic non-fungible tokens to authenticate one or more users, comprising: Mobile devices, including: one or more sensors that can capture images or videos; at least one memory storing instructions; One or more processors are operably connected to the one or more sensors and the at least one memory and can execute instructions to perform the following operations: receiving at least one request from one or more mobile devices associated with the one or more users; capturing, by the one or more sensors, one or more images, one or more videos, or a combination thereof of the one or more users, identification data associated with the one or more users, or a combination thereof; processing the one or more images, the one or more videos, or a combination thereof to detect biometric data unique to the one or more users; Encoding detected biometric data to generate dynamic non-fungible tokens; Storing the dynamic non-fungible token on a transaction block of a distributed blockchain, wherein the dynamic non-fungible token is associated with a programmatically defined smart contract written to the distributed blockchain; The dynamic non-fungible token is transmitted to multiple service providers to authenticate the one or more users.
2. The system according to claim 1, wherein: Encoding the detected biometric data to generate a dynamic non-fungible token further includes: Cryptographically hash each detected biometric data; concatenating each hashed biometric data in a predefined order; Generate and store a singular hash representing the concatenated single hash; A dynamic non-fungible token representing said singular hash is generated.
3. The system according to claim 2, wherein: Storing the dynamic non-fungible token on a transaction block of a distributed blockchain further comprises: Receiving blockchain addresses and verification of blocks recording transactions in a distributed blockchain; Monitor the distributed blockchain and transactions on the distributed blockchain that match the distributed blockchain addresses in real time or near real time.
4. The system according to claim 3, further comprising: Based at least in part on the monitoring, updating metadata associated with at least one dynamic non-fungible token; Generating new dynamic non-fungible tokens based at least in part on the updated metadata; Connecting a new dynamic non-fungible token in a predefined order, wherein the predefined order includes connecting the new dynamic non-fungible token to a previous dynamic non-fungible token on a distributed blockchain transaction block.
5. The system according to claim 1, wherein: Storing the dynamic non-fungible token further includes: A dynamic non-fungible token is held in a first digital wallet in a blockchain network, wherein the first digital wallet generates a private key.
6. The system according to claim 5, wherein: Transmitting the dynamic non-fungible token further comprises: receiving, via a mobile device, at least one second request from one or more users to process a dynamic non-fungible token on a distributed blockchain transaction block, wherein the at least one second request includes transmitting the dynamic non-fungible token to a plurality of service providers; The dynamic non-fungible token is transferred from the first digital wallet to a second digital wallet of the blockchain network, wherein the second digital wallet is associated with the plurality of service providers.
7. The system according to claim 6, wherein: The at least one second request identifies the dynamic non-fungible token through content identification, path identification, or a combination thereof.
8. The system of claim 1, further comprising: Minting dynamic non-fungible tokens on a distributed blockchain.
9. The system of claim 1, further comprising: verifying, via the one or more sensors, an orientation of the one or more mobile devices, a proximity of the one or more mobile devices to the one or more users, or a combination thereof based at least in part on a threshold level; Upon determining that the orientation of the one or more mobile devices, the proximity of the one or more mobile devices to the one or more users, or a combination thereof has exceeded a threshold level, a notification is generated in a user interface of the one or more mobile devices.
10. The system according to claim 1, wherein: The biometric data may include iris patterns, eye color, facial details, hand geometry, fingerprints, or a combination thereof.
11. A computer-implemented method for generating a dynamic non-fungible token to authenticate one or more users, comprising: receiving at least one request from one or more mobile devices associated with the one or more users; receiving, via one or more sensors, one or more images, one or more videos, or a combination thereof of the one or more users, identification data associated with the one or more users, or a combination thereof; processing the one or more images, the one or more videos, or a combination thereof to detect biometric data unique to the one or more users; Encoding detected biometric data to generate dynamic non-fungible tokens; Storing the dynamic non-fungible token on a transaction block of a distributed blockchain, wherein the dynamic non-fungible token is associated with a programmatically defined smart contract written to the distributed blockchain; The dynamic non-fungible token is transmitted to multiple service providers to authenticate the one or more users.
12. The computer-implemented method of claim 11, wherein: Encoding the detected biometric data to generate a dynamic non-fungible token further includes: Cryptographically hash each detected biometric data; concatenating each hashed biometric data in a predefined order; Generate and store a singular hash representing the concatenated single hash; A dynamic non-fungible token representing said singular hash is generated.
13. The computer-implemented method of claim 12, wherein: Storing the dynamic non-fungible token on a transaction block of a distributed blockchain further comprises: Receiving blockchain addresses and verification of blocks recording transactions in a distributed blockchain; Monitor the distributed blockchain and transactions on the distributed blockchain that match the distributed blockchain addresses in real time or near real time.
14. The computer-implemented method of claim 13, further comprising: Based at least in part on the monitoring, updating metadata associated with at least one dynamic non-fungible token; Generating new dynamic non-fungible tokens based at least in part on the updated metadata; Connecting a new dynamic non-fungible token in a predefined order, wherein the predefined order includes connecting the new dynamic non-fungible token to a previous dynamic non-fungible token on a distributed blockchain transaction block.
15. The computer-implemented method of claim 11, wherein: Storing the dynamic non-fungible token further includes: A dynamic non-fungible token is held in a first digital wallet in a blockchain network, wherein the first digital wallet generates a private key.
16. The computer-implemented method of claim 15, wherein: Transmitting the dynamic non-fungible token further comprises: receiving, via a mobile device, at least one second request from one or more users to process a dynamic non-fungible token on a distributed blockchain transaction block, wherein the at least one second request includes transmitting the dynamic non-fungible token to a plurality of service providers; The dynamic non-fungible token is transferred from the first digital wallet to a second digital wallet of the blockchain network, wherein the second digital wallet is associated with the plurality of service providers.
17. The computer-implemented method of claim 16, wherein: The at least one second request identifies the dynamic non-fungible token through content identification, path identification, or a combination thereof.
18. A non-transitory computer-readable medium for generating a dynamic non-fungible token to authenticate one or more users, the non-transitory computer-readable medium storing instructions, which, when executed by one or more processors, cause the one or more processors to perform the following operations: receiving at least one request from one or more mobile devices associated with the one or more users; capturing, via one or more sensors, one or more images, one or more videos, or a combination thereof of the one or more users, identification data associated with the one or more users, or a combination thereof; processing the one or more images, the one or more videos, or a combination thereof to detect biometric data unique to the one or more users; Encoding detected biometric data to generate dynamic non-fungible tokens; Storing the dynamic non-fungible token on a transaction block of a distributed blockchain, wherein the dynamic non-fungible token is associated with a programmatically defined smart contract written to the distributed blockchain; The dynamic non-fungible token is transmitted to multiple service providers to authenticate the one or more users.
19. The non-transitory computer readable medium of claim 18, wherein: Encoding the detected biometric data to generate a dynamic non-fungible token further includes: Cryptographically hash each detected biometric data; concatenating each hashed biometric data in a predefined order; Generate and store a singular hash representing the concatenated single hash; A dynamic non-fungible token representing said singular hash is generated.
20. The non-transitory computer readable medium of claim 19, wherein: Storing the dynamic non-fungible token on a transaction block of a distributed blockchain further comprises: Receiving blockchain addresses and verification of blocks recording transactions in a distributed blockchain; Monitor the distributed blockchain and transactions on the distributed blockchain that match the distributed blockchain addresses in real time or near real time.