The disclosed technology relates generally to apparatuses of a security device with chaotic and measurable properties.
Counterfeiting is a form of theft that has become increasingly problematic. Counterfeit goods span across multiple industries including everything from clothing, accessories, music, software, computer games, medications and cigarettes, to automobile and airplane parts, consumer goods, toys and electronics. The effect is detrimental to the consumers and businesses. Counterfeit products result in loss of revenue for businesses. Consumers purchase counterfeit products that are of low quality and may be exposed to health and safety issues.
FIG. 2D depicts an example character ‘B’ as a basic building block attached to a square wave and truncated Koch curve hybrid identifier, in accordance with embodiments of the present disclosure.
The following description and drawings are illustrative and are not to be construed as limiting. Numerous specific details are described to provide a thorough understanding of the disclosure. However, in certain instances, well-known or conventional details are not described in order to avoid obscuring the description. References to one or an embodiment in the present disclosure can be, but not necessarily are, references to the same embodiment; and, such references mean at least one of the embodiments.
Reference in this specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the disclosure. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Moreover, various features are described which may be exhibited by some embodiments and not by others. Similarly, various requirements are described which may be requirements for some embodiments but not other embodiments.
The terms used in this specification generally have their ordinary meanings in the art, within the context of the disclosure, and in the specific context where each term is used. Certain terms that are used to describe the disclosure are discussed below, or elsewhere in the specification, to provide additional guidance to the practitioner regarding the description of the disclosure. For convenience, certain terms may be highlighted, for example using italics and/or quotation marks. The use of highlighting has no influence on the scope and meaning of a term; the scope and meaning of a term is the same, in the same context, whether or not it is highlighted. It will be appreciated that the same thing can be said in more than one way.
Consequently, alternative language and synonyms may be used for any one or more of the terms discussed herein, nor is any special significance to be placed upon whether or not a term is elaborated or discussed herein. Synonyms for certain terms are provided. A recital of one or more synonyms does not exclude the use of other synonyms. The use of examples anywhere in this specification including examples of any terms discussed herein is illustrative only, and is not intended to further limit the scope and meaning of the disclosure or of any exemplified term. Likewise, the disclosure is not limited to various embodiments given in this specification.
Without intent to further limit the scope of the disclosure, examples of instruments, apparatus, methods and their related results according to the embodiments of the present disclosure are given below. Note that titles or subtitles may be used in the examples for convenience of a reader, which in no way should limit the scope of the disclosure. Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure pertains. In the case of conflict, the present document, including definitions will control.
Embodiments of the present disclosure include systems, methods and apparatuses of a security device. One embodiment includes a security device (e.g., physical security device, tag, Blocktag, physical tag, security device 108A-N of
The first halftone pattern can created by repeating the basic building block with a rotation, spatial periodicity, and/or a given phase shift. The first halftone pattern can also created by repeating the basic building block with locations of each instance of the basic building block specified in a coordinate system. In general, the basic building block includes one or more of the characteristics, individual shape, orientation angle, a dimension, a position, a color.
In one embodiment, the characteristics of the composite pattern can be quantifiable and used to authenticate the security device. The characteristics of the composite pattern can include for example, one or more emergent colors which arise from overlap of the first halftone pattern with different colors. The characteristics of the composite pattern can also include and be determined by for example, an order of printing of the first halftone pattern and the second halftone pattern. The characteristics of the composite pattern can also include a degree of ink bleeding into the physical surface.
In a further embodiment, the characteristics of the composite pattern include a spatial periodicity of the composite pattern. The spatial periodicity can be determined from the first halftone pattern. The characteristics of the composite pattern can also include an orientation angle of the composite pattern and the orientation angle can be determined from the first halftone pattern.
The second halftone pattern can be created from the same building block or a different building block in a similar fashion. In one embodiment, the second halftone pattern is created from a second basic building block and the characteristics of the composite pattern include an emergent shape of the composite pattern where the emergent shape of the composite pattern can be assembled from shapes and positions of the first basic building block and the second basic building block. In a further embodiment, the chaosmetric artifacts created in the physical surface can be quantified to generate a chaosmetric identifier for the first halftone pattern. For example, the chaosmetric identifier of the first halftone pattern can be determined from its spatial frequency.
In one embodiment, the encoded metadata or serial ID can be decoded by a device (e.g. a scan device, a client device 102A-N as shown in the example of
The security device (physical security device) can include a content component/content element. The content component can include an encoded element such as a QR code. The QR code can for example, be placed adjacent to the color barcode. In one embodiment, the QR code encodes a URL that points to content related to the tag or content related a physical item/physical good associated with the tag. The URL can include a domain belonging to a 1st party (e.g. www.blocktag.com/tag0) as administered by a host (e.g., a host server 100 of
One embodiment of the present disclosure includes, a security device having a content element having, for example, at least one of: a URI, a URL or bar code and a 2D colored barcode disposed adjacent to the content element in the physical surface. The composite pattern can be embedded in the 2D colored barcode to form a polychrome pattern identifier.
A further embodiment of the present disclosure includes, a security device having a content element having metadata and where the composite pattern is monochromatic and integrated in the content element. In one embodiment the metadata includes metadata defining characteristics of the composite pattern. In a further embodiment, the composite pattern forms a part of a marker element for lens distortion calibration of a scan device used to authenticate the security device. For example, the composite pattern which forms a part of the marker element can include a checkerboard pattern.
The client devices 102A-N (e.g., client device 402 of the example of
The client devices 102A-N can also include an image or video input integrated display device, with or without a touch enabled display component, with or without optical and/or digital zoom capabilities such as a desktop/laptop computer with web camera or scanner, a Virtual Reality (VR), Augmented Reality (AR) or Mixed Reality (MR) headset/glasses with camera, a drone camera, a telescope camera, a microscope camera, a Closed Circuit Television (CCTV) security camera, a production line inspection camera, a wearable device with camera, a vehicle mount computer with camera, an embedded computer with imaging system, among other similar computing devices, to inspect, fingerprint and authenticate tags.
The input mechanism on client devices 102A-N can include touch screen keypad (including single touch, multi-touch, gesture sensing in 2D or 3D, etc.), a physical keypad, a mouse, a pointer, a track pad, motion detector (e.g., including 1-axis, 2-axis, 3-axis accelerometer, etc.), a light sensor, capacitance sensor, resistance sensor, temperature sensor, proximity sensor, a piezoelectric device, device orientation detector (e.g., electronic compass, tilt sensor, rotation sensor, gyroscope, accelerometer), eye tracking, eye detection, pupil tracking/detection, or a combination of the above.
The client devices 102A-N, security devices (Blocktag/tag) 108A-N, its respective networks of users 116A-N, a third party tag generator entity 112, and/or a print device114, can be coupled to the network 106 and/or multiple networks. In some embodiments, the devices 102A-N and host server 100 may be directly connected to one another. In one embodiment, the host server 100 is operable to administer, fingerprint, generate. track, authenticate security devices in a network. The host server 100 can transmit, receive data or information regarding security devices 108A-N via a user devices 102A-N.
Functions and techniques performed by the host server 100 and the components therein are also described in detail with further references to the examples of
In general, network 106, over which the client devices 102A-N, the host server 100, the security devices 108A-N, the tag requestor entity 112, and/or the print device 114 communicate, may be a cellular network, a telephonic network, an open network, such as the Internet, or a private network, such as an intranet and/or the extranet, or any combination thereof. For example, the Internet can provide file transfer, remote log in, email, news, RSS, cloud-based services, instant messaging, visual voicemail, push mail, VoIP, and other services through any known or convenient protocol, such as, but is not limited to the TCP/IP protocol, Open System Interconnections (OSI), FTP, UPnP, iSCSI, NSF, ISDN, PDH, RS-232, SDH, SONET, etc.
The network 106 can be any collection of distinct networks operating wholly or partially in conjunction to provide connectivity to the client devices 102A-N and the host server 100 and may appear as one or more networks to the serviced systems and devices. In one embodiment, communications to and from the client devices 102A-N can be achieved by an open network, such as the Internet, or a private network, such as an intranet and/or the extranet. In one embodiment, communications can be achieved by a secure communications protocol, such as secure sockets layer (SSL), or transport layer security (TLS).
In addition, communications can be achieved via one or more networks, such as, but are not limited to, one or more of WiMax, a Local Area Network (LAN), Wireless Local Area Network (WLAN), a Personal area network (PAN), a Campus area network (CAN), a Metropolitan area network (MAN), a Wide area network (WAN), a Wireless wide area network (WWAN), enabled with technologies such as, by way of example, Global System for Mobile Communications (GSM), Personal Communications Service (PCS), Digital Advanced Mobile Phone Service (D-Amps), Bluetooth, Wi-Fi, Fixed Wireless Data, 2G, 2.5G, 3G, 4G, 5G, IMT-Advanced, pre-4G, 3G LTE, 3GPP LTE, LTE Advanced, mobile WiMax, WiMax 2, WirelessMAN-Advanced networks, enhanced data rates for GSM evolution (EDGE), General packet radio service (GPRS), enhanced GPRS, iBurst, UMTS, HSPDA, HSUPA, HSPA, UMTS-TDD, 1×RTT, EV-DO, messaging protocols such as, TCP/IP, SMS, MMS, extensible messaging and presence protocol (XMPP), real time messaging protocol (RTMP), instant messaging and presence protocol (IMPP), instant messaging, USSD, IRC, or any other wireless data networks or messaging protocols.
The host server 100 may include internally or be externally coupled to the security device repository 122, the tag identity/property repository 124, the ledger address repository 126 and/or the scan log and authentication challenge repository 128. The host server 100 is able to generate, create and/or provide data to be stored in the security device repository 122, the tag identity/property repository 124, the ledger address repository 126 and/or the scan log and authentication challenge repository 128. The repositories can store software, descriptive data, images, system information, drivers, and/or any other data item utilized by other components of the host server 100 and/or any other servers for operation. The repositories may be managed by a database management system (DBMS), for example but not limited to, Oracle, DB2, Microsoft Access, Microsoft SQL Server, PostgreSQL, MySQL, FileMaker, etc. The repositories can be implemented via object-oriented technology and/or via text files, and can be managed by a distributed database management system, an object-oriented database management system (OODBMS) (e.g., ConceptBase, FastDB Main Memory Database Management System, JDOlnstruments, ObjectDB, etc.), an object-relational database management system (ORDBMS) (e.g., Informix, OpenLink Virtuoso, VMDS, etc.), a file system, and/or any other convenient or known database management package.
Users who want to generate, create, or design blueprints of the security device 108 can in one embodiment, self-serve the process via the disclosed system (e.g., the host server 100 of
For example, a tag requestor entity 112 can issue a request to generate a digital tag blueprint to the system (e.g., the host server 100 of
The chaosmetric properties and chaosmetric print quality inspection of the security device 108 can be initiated by the tag generator entity 112 or other users 116A-N using the user device 102. The request for quality check can be sent to the host server 100 (e.g., the host server 100 of
The inspected and/or fingerprinted security device 108 can then be authenticated by by other users 116A-N using the user device (e.g., the device 102A-N as shown in the example of
The host server (e.g., the host server 100 of
The tag configuration options can also include parameters associated with the security device 108. Such parameters include, for example, width, height, text, logos, embedded metadata, etc. Access to the host server 100 (e.g., the host server 100 of
In response to receiving a selection of configuration specification from the requestor entity 112, the host server 100 (e.g., the host server 100 of
The print device 114 can include for example, desktop home or office printers, industry-grade factory printers, point of sale receipt printers, portable/mobile pocket/backpack-sized photo printers, industrial label printers, 3D printers for example. Print device that deposit ink in additive ways such as inkjets, laserjet, ultraviolet curing, sublimation, heat transfer, water slide transfer, digital offset, 3D printing, microprinting, solid/hot-melt ink printing, or subtractive ways such as laser engraving/etching, laser marking, chemical etching, photolithography, photographic exposure, Computer Numerical Control (CNC) machining (drilling, boring, milling, reaming etc.). Print device of different feeder inputs such as flatbed, roller, paper tray, for example. Print device that prints directly or indirectly on different material substrates such as paper, leather, metals, wood, fabrics, glass, plastic, rubber, animal or human skin, for example. Print device that uses different ink types such as water or oil based ink, powder based toner, solid based ink (e.g. wax, crayons) among other similar printing devices.
The security device 108 can be printed directly on material surfaces such as document paper, product packaging, among others, or printed indirectly on sticker paper which is subsequently pasted on surfaces. Note that the chaos amplification unit 132 is an optional component (hardware and/or software) that can be coupled to the print device 114. The choas amplification unit 132 can be coupled to and controlled by the system (e.g., the host server 100 of
A blueprint of a security device (e.g., Blocktag, tag, etc.) can be designed using on a bottom-up approach or top-down approach using basic building blocks (e.g., lines, circles, squares, dots, etc.). Various characteristics of the basic building blocks can be specified. In general, a basic building block is a fundamental unit which produces chaosmetric artifacts in the material used to create the security device when printed. The characteristics of building blocks include, for example, one or more of, 1. Individual shape (Dot, straight line segment, curved line segment, letter, character etc.) 2. Orientation angle, 3. Dimensions (Radius, width etc), 4. Position (x, y coordinates) on the surface of the security device 5. Color (e.g., Cyan, Magenta, Yellow, Black, etc.)
One or more basic building blocks can be used together to produce a base pattern. A basic building block can also be embedded with a base pattern. For example, a basic building block can be repeated to form a recurring halftone pattern with a certain rotation, spatial periodicity and/or phase shift measured as the number of digital pixels or printed dots along x and y-axis. When printed, this halftone property represents general chaosmetric artifacts on top of a basic building block's specific chaosmetric artifacts. In some embodiments, basic building blocks can also be defined and specified by placement on a coordinate system. For example, how a vertical/horizontal line grating can be positioned in Cartesian coordinates or how a circular tangential or radial grating can be drawn in polar coordinates.
Emergent colors from overlapping base pattern with different colors (e.g. Cyan+Magenta=Blue, Cyan+Yellow=Green, Magenta+Yellow=Red).
Print order of overlapping base patterns. E.g. Different shades of red are derived from printing cyan pattern first, followed by magenta on top versus printing magenta first, followed by cyan on top.
Degree of colored ink bleeding unique to the printed material surface and ink type used.
Spatial periodicity of composite patterns derived from base pattern.
Orientation angle of composite patterns derived from base pattern.
Emergent shape assembled from the shapes and positions of each base pattern's basic building block.
Emergent composite pattern assembled from basic buildings blocks
Overlapping halftone patterns solve the following problems:
The base halftone pattern's spatial periodicity and rotation may be obvious to the naked eye, making it easy to clone. A composite pattern masks it's underlying base patterns, making them more covert, less easy to clone and still maintain its spatial periodicity and rotation signal.
chaosmetric artifacts arising from a base pattern ink edge bleeding into paper may be insufficient to distinguish a printed original base pattern from a cloned base pattern. Composite pattern increases chaosmetric by causing ink bleeding not only into the paper but also between overlapping base pattern layers.
The base or composite pattern design can exist not only as a standalone authentication element but also in other ways, for example, Integrated as part of a larger whole design blueprint or placed adjacent to other design elements. A scenario for integration as part of a larger whole includes a serialization technique where each tag can be uniquely identified by a serial number using a 2D colored barcode. Overlapping the three base layers 274 creates the 2D color barcode with composite patterns from
The host server 300 includes a network interface 302, a verification engine 310 and/or a security device (tag) generator 340. The host server 300 is also coupled to a security device (Blocktag/tag) repository 322, a tag identity/property repository 324 and/or a ledger address repository 326. Each of the verification engine 310, and/or the security device (tag) generator 340 can be coupled to each other. One embodiment of the verification engine 310 further includes, an inspection engine 312, a fingerprint engine 314 and/or an authentication engine 318. One embodiment of the security device (tag) generator 340 includes, a chaosmetrics specification engine 342 and/or a components specification engine 344.
Additional or less modules can be included without deviating from the techniques discussed in this disclosure. In addition, each module in the example of
The network interface 302 can be a networking module that enables the host server 300 to mediate data in a network with an entity that is external to the host server 300, through any known and/or convenient communications protocol supported by the host and the external entity. The network interface 302 can include one or more of a network adaptor card, a wireless network interface card (e.g., SMS interface, WiFi interface, interfaces for various generations of mobile communication standards including but not limited to 1G, 2G, 3G, 3.5G, 4G, LTE, 5G, etc.,), Bluetooth, a router, an access point, a wireless router, a switch, a multilayer switch, a protocol converter, a gateway, a bridge, bridge router, a hub, a digital media receiver, and/or a repeater.
As used herein, a “module,” a “manager,” an “agent,” a “tracker,” a “handler,” a “detector,” an “interface,” or an “engine” includes a general purpose, dedicated or shared processor and, typically, firmware or software modules that are executed by the processor. Depending upon implementation-specific or other considerations, the module, manager, tracker, agent, handler, or engine can be centralized or have its functionality distributed in part or in full. The module, manager, tracker, agent, handler, or engine can include general or special purpose hardware, firmware, or software embodied in a computer-readable (storage) medium for execution by the processor.
As used herein, a computer-readable medium or computer-readable storage medium is intended to include all mediums that are statutory (e.g., in the United States, under 35 U.S.C. 101), and to specifically exclude all mediums that are non-statutory in nature to the extent that the exclusion is necessary for a claim that includes the computer-readable (storage) medium to be valid. Known statutory computer-readable mediums include hardware (e.g., registers, random access memory (RAM), non-volatile (NV) storage, flash, optical storage, to name a few), but may or may not be limited to hardware.
The verification engine 310 and its components can include any combination of software agents and/or hardware modules (e.g., including processors and/or memory units). The security device (tag) generator 340 and its components can include any combination of software agents and/or hardware modules (e.g., including processors and/or memory units).
In one embodiment, host server 300 includes a network interface 302, a processing unit 334, a memory unit 336, a storage unit 338, a location sensor 340, and/or a timing module 342. Additional or less units or modules may be included. The host server 300 can be any combination of hardware components and/or software agents to administer, generate, track, authenticate security devices in a network. The network interface 302 has been described in the example of
The client device 402 includes a network interface 404, a timing module 406, an RF sensor 407, a location sensor 408, an image sensor 409, a verification engine 412 having an inspection engine 413, an authentication engine 414 having a fingerprint engine 415, a user stimulus sensor 416, a motion/gesture sensor 418, a capture engine/scanner 420, an audio/video output module 422, and/or other sensors 410. The client device 402 may be any electronic device such as the devices described in conjunction with the client devices 102A-N in the example of
Additional or less modules can be included without deviating from the novel art of this disclosure. In addition, each module in the example of
The client device 402 can perform one or more processes related to reading, provisioning, scanning, detecting, decoding, identifying, inspecting, authenticating security devices and/or retrieving relevant data from security devices. The client device 402 can further provide functionalities described herein via a consumer client application (app) (e.g., consumer app, client app, etc.).The consumer / end user application includes a user interface that enables access to one or more processes related to administering, fingerprinting, generating, tracking, and/or authenticating security devices. In some embodiments, any portion of or all of the functions described of the various example modules in the host server 300 of the example of
In one embodiment, client device 402 (e.g., a user device) includes a network interface 432, a processing unit 434, a memory unit 436, a storage unit 438, a location sensor 440, an accelerometer/motion sensor 442, an audio output unit/speakers 446, a display unit 450, an image capture unit 452, a pointing device/sensor 454, an input device 456, and/or a touch screen sensor 458. Additional or less units or modules may be included. The client device 402 can be any combination of hardware components and/or software agents for reading, provisioning, scanning, detecting, decoding, identifying security devices and/or retrieving relevant data from security devices. The network interface 432 has been described in the example of
One embodiment of the client device 402 further includes a processing unit 434. The location sensor 440, accelerometer/motion sensor 442, and timer 444 have been described with reference to the example of
The printer configurations do not require direct access to the printer's internal program (firmware) to generate these chaotic pattern characteristics. Various pattern generation techniques are injected during the stages below:
1. Blueprint Request Stage
2. Print Quality Inspection Stage
3. Tag Printing Stage
These techniques can be used separately or stacked together in different permutations to ensure chaosmetric property is unique enough to distinguish an original tag from a cloned tag reprinted on the same printer from the same blueprint.
Blueprint Request Stage—In the request stage, a user submit a request for tag blueprints—providing their printer's specifications including but not limited to brand, model, printer type (Inkjet, Laserjet etc), Dots Per Inch (DPI) resolution. The request can be submitted from Blocktag's website as a form where users input their printer's specs or from Blocktag's printer driver which programmatically checks what are the user's printer specs. The printer driver can be installed on the user's computer client, or accessed as a web application.
Blueprint Generation Stage—A Blocktag blueprint may be designed using on a bottom-up approach or top-down approach comprising basic building blocks with the following characteristics:
1. Individual shape (Dot, straight line segment, curved line segment, letter, character etc.)
2. Orientation angle
3. Dimensions (Radius, width etc)
4. Position (x,y coordinates) on the tag surface.
5. Color (Including but not limited to Cyan, Magenta, Yellow, Black)
Analog patterns can be generated by depositing ink or other materials used by print processes on any printable surface (e.g. paper, fabrics). For example:
1. Toners in laser printing
2. Solid to gaseous ink transfer in sublimation printing
3. Heat transfer print techniques
4. Ultraviolet printing where base layers of ink are hardened by UV light treatment, creating 3D pattern textures)
5. Patterns created from depositing other materials besides ink using 3D printer.
Another way to generate analog patterns besides printing is via photolithography techniques. For example, ultraviolet curable resins can be used to generate patterns on glass and plastic surfaces.
Chaosmetric patterns can also be printed through additional techniques. For example:
1. Heat transfer printing where the pattern is first printed on paper. Subsequently, ink is thermally transferred from the paper to another surface such as a fabric using heat and pressure. The heat transfer process amplifies ink randomness as the fabric may have an uneven texture and ink colors may change when heated.
2. Water slide transfer printing where the pattern is first printed on a special paper lined with adhesive on one side. The pattern is printed with ink on the adhesive side. Ink is transferred from the paper to another surface using water and pressure. For example, pressing a paper printed with a tattoo pattern onto skin with a damp cloth. The water slide transfer process amplifies ink randomness due to varying skin moisture and ambient humidity.
3. Sublimation printing where solid ink is converted to gaseous state first before ink deposition.
4. Ultraviolet printing where base layers of ink are hardened by UV light treatment, creating 3D pattern textures.
5. Microprinting at a scale that requires analog or digital zoom magnification to read with the naked eye. For example, using offset printing plates, Intaglio printmaking, laser etching or laser marking to print recognizable characters/patterns on currency or bank cheques.
6. 3D printing depositing other materials besides ink using 3D printer.
7. Photolithography. For example, ultraviolet (UV) curable resins can be partially exposed to UV light to etch chaosimetric patterns on glass and plastic surfaces.
8. Chemical etching commonly found in semiconductor fabrication processes to generate patterns or 3D microstructures on metallic surfaces. To create chaosimetrics, wash metallic surfaces with the chemical etchant for a shorter time so that the 3D microstructures etched on the metal are incomplete. The imperfect etching becomes a source for desirable chaosimetric patterns.
In some embodiments, the operating system 1004 manages hardware resources and provides common services. The operating system 1004 includes, for example, a kernel 1020, services 1022, and drivers 1024. The kernel 1020 acts as an abstraction layer between the hardware and the other software layers consistent with some embodiments. For example, the kernel 1020 provides memory management, processor management (e.g., scheduling), component management, networking, and security settings, among other functionality. The services 1022 can provide other common services for the other software layers. The drivers 1024 are responsible for controlling or interfacing with the underlying hardware, according to some embodiments. For instance, the drivers 1024 can include display drivers, camera drivers, BLUETOOTH drivers, flash memory drivers, serial communication drivers (e.g., Universal Serial Bus (USB) drivers), WI-FI drivers, audio drivers, power management drivers, and so forth. In some embodiments, the libraries 1006 provide a low-level common infrastructure utilized by the applications 1010. The libraries 1006 can include system libraries 1030 (e.g., C standard library) that can provide functions such as memory allocation functions, string manipulation functions, mathematics functions, and the like. In addition, the libraries 1006 can include API libraries 1032 such as media libraries (e.g., libraries to support presentation and manipulation of various media formats such as Moving Picture Experts Group-4 (MPEG4), Advanced Video Coding (H.264 or AVC), Moving Picture Experts Group Layer-3 (MP3), Advanced Audio Coding (AAC), Adaptive Multi-Rate (AMR) audio codec, Joint Photographic Experts Group (JPEG or JPG), or Portable Network Graphics (PNG)), graphics libraries (e.g., an OpenGL framework used to render in two dimensions (2D) and three dimensions (3D) in a graphic content on a display), database libraries (e.g., SQLite to provide various relational database functions), web libraries (e.g., WebKit to provide web browsing functionality), and the like. The libraries 1006 can also include a wide variety of other libraries 1034 to provide many other APIs to the applications 1010.
The frameworks 1008 provide a high-level common infrastructure that can be utilized by the applications 1010, according to some embodiments. For example, the frameworks 1008 provide various graphic user interface (GUI) functions, high-level resource management, high-level location services, and so forth. The frameworks 1008 can provide a broad spectrum of other APIs that can be utilized by the applications 1010, some of which may be specific to a particular operating system 1004 or platform. In an example embodiment, the applications 1010 include a home application 1050, a contacts application 1052, a browser application 1054, a search/discovery application 1056, a location application 1058, a media application 1060, a messaging application 1062, a security device application 1064, and other applications such as a third party application 1066. According to some embodiments, the applications 1010 are programs that execute functions defined in the programs. Various programming languages can be employed to create one or more of the applications 1010, structured in a variety of manners, such as object-oriented programming languages (e.g., Objective-C, Java, or C++) or procedural programming languages (e.g., C or assembly language). In a specific example, the third party application 1066 (e.g., an application developed using the Android, Windows or iOS. software development kit (SDK) by an entity other than the vendor of the particular platform) may be mobile software running on a mobile operating system such as Android, Windows or iOS, or another mobile operating systems. In this example, the third party application 1066 can invoke the API calls 1012 provided by the operating system 1004 to facilitate functionality described herein. The security device application 1067 may implement any system or method described herein, including provisioning, administering, verifying, creating, generating, authenticating security devices or any other operation described herein.
Specifically,
As used herein, the term “machine-readable medium” or “machine-readable storage medium” means a device able to store instructions and data temporarily or permanently and may include, but is not be limited to, random-access memory (RAM), read-only memory (ROM), buffer memory, flash memory, optical media, magnetic media, cache memory, other types of storage (e.g., Erasable Programmable Read-Only Memory (EEPROM)) or any suitable combination thereof The term “machine-readable medium” or “machine-readable storage medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, or associated caches and servers) able to store instructions 1116. The term “machine-readable medium” or “machine-readable storage medium” shall also be taken to include any medium, or combination of multiple media, that is capable of storing, encoding or carrying a set of instructions (e.g., instructions 1116) for execution by a machine (e.g., machine 1100), such that the instructions, when executed by one or more processors of the machine 1100 (e.g., processors 1111), cause the machine 1100 to perform any one or more of the methodologies described herein. Accordingly, a “machine-readable medium” or “machine-readable storage medium” refers to a single storage apparatus or device, as well as “cloud-based” storage systems or storage networks that include multiple storage apparatus or devices. The term “machine-readable medium” or “machine-readable storage medium” excludes signals per se.
In general, the routines executed to implement the embodiments of the disclosure, may be implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions referred to as “computer programs.” The computer programs typically comprise one or more instructions set at various times in various memory and storage devices in a computer, and that, when read and executed by one or more processing units or processors in a computer, cause the computer to perform operations to execute elements involving the various aspects of the disclosure. Moreover, while embodiments have been described in the context of fully functioning computers and computer systems, those skilled in the art will appreciate that the various embodiments are capable of being distributed as a program product in a variety of forms, and that the disclosure applies equally regardless of the particular type of machine or computer-readable media used to actually effect the distribution. Further examples of machine-readable storage media, machine-readable media, or computer-readable (storage) media include, but are not limited to, recordable type media such as volatile and non-volatile memory devices, floppy and other removable disks, hard disk drives, optical disks (e.g., Compact Disk Read-Only Memory (CD ROMS), Digital Versatile Disks, (DVDs), etc.), among others, and transmission type media such as digital and analog communication links.
The I/O components 1150 can include a wide variety of components to receive input, provide output, produce output, transmit information, exchange information, capture measurements, and so on. The specific I/O components 1150 that are included in a particular machine will depend on the type of machine. For example, portable machines such as mobile phones will likely include a touch input device or other such input mechanisms, while a headless server machine will likely not include such a touch input device. It will be appreciated that the I/O components 1150 can include many other components that are not shown in
In further example embodiments, the I/O components 1152 can include biometric components 1156, motion components 1158, environmental components 1160, or position components 1162 among a wide array of other components. For example, the biometric components 1156 can include components to detect expressions (e.g., hand expressions, facial expressions, vocal expressions, body gestures, or eye tracking), measure biosignals (e.g., blood pressure, heart rate, body temperature, perspiration, or brain waves), identify a person (e.g., voice identification, retinal identification, facial identification, fingerprint identification, or electroencephalogram based identification), and the like. The motion components 1158 can include acceleration sensor components (e.g., an accelerometer), gravitation sensor components, rotation sensor components (e.g., a gyroscope), and so forth. The environmental components 1160 can include, for example, illumination sensor components (e.g., a photometer), temperature sensor components (e.g., one or more thermometers that detect ambient temperature), humidity sensor components, pressure sensor components (e.g., a barometer), acoustic sensor components (e.g., one or more microphones that detect background noise), proximity sensor components (e.g., infrared sensors that detect nearby objects), gas sensor components (e.g., machine olfaction detection sensors, gas detection sensors to detect concentrations of hazardous gases for safety or to measure pollutants in the atmosphere), or other components that may provide indications, measurements, or signals corresponding to a surrounding physical environment. The position components 1162 can include location sensor components (e.g., a GPS receiver component), altitude sensor components (e.g., altimeters or barometers that detect air pressure from which altitude may be derived), orientation sensor components (e.g., magnetometers), and the like. Communication can be implemented using a wide variety of technologies. The I/O components 1150 may include communication components 1164 operable to couple the machine 1100 to a network 1180 or devices 1170 via a coupling 1182 and a coupling 1172, respectively. For example, the communication components 1164 include a network interface component or other suitable device to interface with the network 1180. In further examples, communication components 1164 include wired communication components, wireless communication components, cellular communication components, Near Field Communication (NFC) components, Bluetooth. components (e.g., Bluetooth. Low Energy), WI-FI components, and other communication components to provide communication via other modalities. The devices 1170 may be another machine or any of a wide variety of peripheral devices (e.g., a peripheral device coupled via a USB). The network interface component can include one or more of a network adapter card, a wireless network interface card, a router, an access point, a wireless router, a switch, a multilayer switch, a protocol converter, a gateway, a bridge, bridge router, a hub, a digital media receiver, and/or a repeater.
The network interface component can include a firewall which can, in some embodiments, govern and/or manage permission to access/proxy data in a computer network, and track varying levels of trust between different machines and/or applications. The firewall can be any number of modules having any combination of hardware and/or software components able to enforce a predetermined set of access rights between a particular set of machines and applications, machines and machines, and/or applications and applications, for example, to regulate the flow of traffic and resource sharing between these varying entities. The firewall may additionally manage and/or have access to an access control list which details permissions including for example, the access and operation rights of an object by an individual, a machine, and/or an application, and the circumstances under which the permission rights stand. Other network security functions can be performed or included in the functions of the firewall, can be, for example, but are not limited to, intrusion-prevention, intrusion detection, next-generation firewall, personal firewall, etc. without deviating from the novel art of this disclosure.
Moreover, the communication components 1164 can detect identifiers or include components operable to detect identifiers. For example, the communication components 1164 can include Radio Frequency Identification (RFID) tag reader components, NFC smart tag detection components, optical reader components (e.g., an optical sensor to detect one-dimensional bar codes such as a Universal Product Code (UPC) bar code, multi-dimensional bar codes such as a Quick Response (QR) code, Aztec Code, Data Matrix, Dataglyph, MaxiCode, PDF417, Ultra Code, Uniform Commercial Code Reduced Space Symbology (UCC RSS)-2D bar codes, and other optical codes), acoustic detection components (e.g., microphones to identify tagged audio signals), or any suitable combination thereof. In addition, a variety of information can be derived via the communication components 1164, such as location via Internet Protocol (IP) geo-location, location via WI-FI signal triangulation, location via detecting a BLUETOOTH or NFC beacon signal that may indicate a particular location, and so forth. In various example embodiments, one or more portions of the network 1180 can be an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), the Internet, a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a plain old telephone service (POTS) network, a cellular telephone network, a wireless network, a WI-FI.RTM. network, another type of network, or a combination of two or more such networks. For example, the network 1180 or a portion of the network 1180 may include a wireless or cellular network, and the coupling 1182 may be a Code Division Multiple Access (CDMA) connection, a Global System for Mobile communications (GSM) connection, or other type of cellular or wireless coupling. In this example, the coupling 1182 can implement any of a variety of types of data transfer technology, such as Single Carrier Radio Transmission Technology, Evolution-Data Optimized (EVDO) technology, General Packet Radio Service (GPRS) technology, Enhanced Data rates for GSM Evolution (EDGE) technology, third Generation Partnership Project (3GPP) including 3G, fourth generation wireless (4G) networks, 5G, Universal Mobile Telecommunications System (UMTS), High Speed Packet Access (HSPA), Worldwide Interoperability for Microwave Access (WiMAX), Long Term Evolution (LTE) standard, others defined by various standard setting organizations, other long range protocols, or other data transfer technology.
The instructions 1116 can be transmitted or received over the network 1180 using a transmission medium via a network interface device (e.g., a network interface component included in the communication components 1164) and utilizing any one of a number of transfer protocols (e.g., HTTP). Similarly, the instructions 1116 can be transmitted or received using a transmission medium via the coupling 1172 (e.g., a peer-to-peer coupling) to devices 1170. The term “transmission medium” shall be taken to include any intangible medium that is capable of storing, encoding, or carrying the instructions 1116 for execution by the machine 1100, and includes digital or analog communications signals or other intangible medium to facilitate communication of such software. Throughout this specification, plural instances may implement components, operations, or structures described as a single instance. Although individual operations of one or more methods are illustrated and described as separate operations, one or more of the individual operations may be performed concurrently, and nothing requires that the operations be performed in the order illustrated. Structures and functionality presented as separate components in example configurations may be implemented as a combined structure or component. Similarly, structures and functionality presented as a single component may be implemented as separate components. These and other variations, modifications, additions, and improvements fall within the scope of the subject matter herein. Although an overview of the innovative subject matter has been described with reference to specific example embodiments, various modifications and changes may be made to these embodiments without departing from the broader scope of embodiments of the present disclosure. Such embodiments of the novel subject matter may be referred to herein, individually or collectively, by the term “innovation” merely for convenience and without intending to voluntarily limit the scope of this application to any single disclosure or novel or innovative concept if more than one is, in fact, disclosed. The embodiments illustrated herein are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed. Other embodiments may be used and derived therefrom, such that structural and logical substitutions and changes may be made without departing from the scope of this disclosure. The Detailed Description, therefore, is not to be taken in a limiting sense, and the scope of various embodiments is defined only by the appended claims, along with the full range of equivalents to which such claims are entitled. As used herein, the term “or” may be construed in either an inclusive or exclusive sense. Moreover, plural instances may be provided for resources, operations, or structures described herein as a single instance. Additionally, boundaries between various resources, operations, modules, engines, and data stores are somewhat arbitrary, and particular operations are illustrated in a context of specific illustrative configurations. Other allocations of functionality are envisioned and may fall within a scope of various embodiments of the present disclosure. In general, structures and functionality presented as separate resources in the example configurations may be implemented as a combined structure or resource. Similarly, structures and functionality presented as a single resource may be implemented as separate resources. These and other variations, modifications, additions, and improvements fall within a scope of embodiments of the present disclosure as represented by the appended claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.
Unless the context clearly requires otherwise, throughout the description and the claims, the words “comprise,” “comprising,” and the like are to be construed in an inclusive sense, as opposed to an exclusive or exhaustive sense; that is to say, in the sense of “including, but not limited to.” As used herein, the terms “connected,” “coupled,” or any variant thereof, means any connection or coupling, either direct or indirect, between two or more elements; the coupling of connection between the elements can be physical, logical, or a combination thereof Additionally, the words “herein,” “above,” “below,” and words of similar import, when used in this application, shall refer to this application as a whole and not to any particular portions of this application. Where the context permits, words in the above Detailed Description using the singular or plural number may also include the plural or singular number respectively. The word “or,” in reference to a list of two or more items, covers all of the following interpretations of the word: any of the items in the list, all of the items in the list, and any combination of the items in the list.
The above detailed description of embodiments of the disclosure is not intended to be exhaustive or to limit the teachings to the precise form disclosed above. While specific embodiments of, and examples for, the disclosure are described above for illustrative purposes, various equivalent modifications are possible within the scope of the disclosure, as those skilled in the relevant art will recognize. For example, while processes or blocks are presented in a given order, alternative embodiments may perform routines having steps, or employ systems having blocks, in a different order, and some processes or blocks may be deleted, moved, added, subdivided, combined, and/or modified to provide alternative or subcombinations. Each of these processes or blocks may be implemented in a variety of different ways. Also, while processes or blocks are at times shown as being performed in series, these processes or blocks may instead be performed in parallel, or may be performed at different times. Further, any specific numbers noted herein are only examples: alternative implementations may employ differing values or ranges. The teachings of the disclosure provided herein can be applied to other systems, not necessarily the system described above. The elements and acts of the various embodiments described above can be combined to provide further embodiments. Any patents and applications and other references noted above, including any that may be listed in accompanying filing papers, are incorporated herein by reference. Aspects of the disclosure can be modified, if necessary, to employ the systems, functions, and concepts of the various references described above to provide yet further embodiments of the disclosure.
These and other changes can be made to the disclosure in light of the above Detailed Description. While the above description describes certain embodiments of the disclosure, and describes the best mode contemplated, no matter how detailed the above appears in text, the teachings can be practiced in many ways. Details of the system may vary considerably in its implementation details, while still being encompassed by the subject matter disclosed herein. As noted above, particular terminology used when describing certain features or aspects of the disclosure should not be taken to imply that the terminology is being redefined herein to be restricted to any specific characteristics, features, or aspects of the disclosure with which that terminology is associated. In general, the terms used in the following claims should not be construed to limit the disclosure to the specific embodiments disclosed in the specification, unless the above Detailed Description section explicitly defines such terms. Accordingly, the actual scope of the disclosure encompasses not only the disclosed embodiments, but also all equivalent ways of practicing or implementing the disclosure under the claims.
While certain aspects of the disclosure are presented below in certain claim forms, the inventors contemplate the various aspects of the disclosure in any number of claim forms. For example, while only one aspect of the disclosure is recited as a means-plus-function claim under 35 U.S.C. § 112, ¶6, other aspects may likewise be embodied as a means-plus-function claim, or in other forms, such as being embodied in a computer-readable medium. (Any claims intended to be treated under 35 U.S.C. § 112, ¶6 will begin with the words “means for”.) Accordingly, the applicant reserves the right to add additional claims after filing the application to pursue such additional claim forms for other aspects of the disclosure.
This application claims the benefit of: U.S. Provisional Application No. 63/021,798, filed May 8, 2020 and entitled “SYSTEMS, METHODS AND APPARATUSES OF PATTERN GENERATION AND/OR PATTERN AUTHENTICATION,” (8002.US00), the contents of which are incorporated by reference in their entirety; and U.S. Provisional Application No. 63/161,473, filed Mar. 16, 2021 and entitled “Systems, Methods, and Apparatuses For Tag Request, Inspection, Generation, Printing, Fingerprinting with Chaosimetric Patterns,” (8003.US00), the contents of which are incorporated by reference in their entirety. This application is related to PCT Application no. PCT/US2021/______, filed May ______, 2021 and entitled “Security Device with Chaosmetric Patterns” (Attorney Docket No. 99013-8002.W000), the contents of which are incorporated by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
63021798 | May 2020 | US | |
63161473 | Mar 2021 | US |