the invention now will be described more fully hereinafter with reference to the accompanying figures , in which embodiments of the invention are shown . this invention may , however , be embodied in many alternate forms and should not be construed as limited to the embodiments set forth herein . fig1 shows an embodiment of a system , whereby bar code data 10 is generated and printed by generator 15 . bar code data 10 may be stored in product database server 20 . mobile device with mobile application 25 may be used to scan a product &# 39 ; s bar code data 30 and communicate with product database server 20 . verification may be sent back to mobile application 25 , whereby the user assesses the verification and decides whether or not to make the purchase . in embodiments , the system may comprise at least one product database server 20 , which is / are not particularly limited and may comprise any database server that is suitable to carry out the embodiment . the at least one product database server may be , for example , the latest windows os , ms sql server , and may be fully patched and kids installed . the at least one product database server may comprise the qualities of high - availability and built - in redundancy with the back - end system of the database application using client / server architecture . the back - end system performs tasks such as data analysis , storage , data manipulation , archiving , and other non - user specific tasks . in embodiments , the system may comprise a mobile application 25 installed on a mobile device , such as a device that operates on mobile platform systems such as ios or android . mobile application 25 may be written in any known language that is suitable to execute the application on a given mobile platform . the mobile application 25 should be written with proper security controls . mobile application 25 may be distributed to mobile devices through appropriate market location and / or through appropriate media . mobile application 25 may include other features , such as security features whereby updates may be pushed out automatically to the devices where mobile application 25 is installed . mobile application 25 may be a signed application to verify the integrity of the written code and the provider . the mobile application 25 may be required to be activated prior to initial use , whereby a unique application activation code may be sent via short messages systems ( sms ). mobile application 25 may be adapted to scan bar code data printed on a product . mobile application 25 may be adapted to encrypt not only the bar code data but also the basic mobile device information , such as the device &# 39 ; s telephone number , location information in the form of coordinates and mobile device owner information such as email or residential addresses . once encrypted , the bar code data and basic mobile device information are sent over a network to an application server ( not shown ) which communicates with product database server 20 . in order to maximize security of the encrypted scanned bar code data and basis mobile device information being sent , it may be desirable to send the information over the internet using wifi so as to avoid telephone companies and other similar carriers . fig2 shows an embodiment of a system , whereby product bar code data 50 is scanned by mobile device 51 with mobile application 55 . the scanned bar code data 50 may be sent over internet 78 and transmitted to external network 60 comprising application database server 65 . external network 60 may comprise a firewall 70 . a query may be sent from the server 65 to internal network 75 comprising a data storage database server 80 and a product database server 85 . internal network 75 may comprise a firewall 88 . in embodiments , the system may comprise at least one application server , which is / are not particularly limited and may comprise any application server that is suitable to carry out the embodiment . the at least one application server may be , for example , the latest windows os , and may be fully patched and hids installed . the at least one application server may be a program that handles all application operations between purchaser and databases or other backend - type applications . such an application server is typically used for complex transaction - based applications . to support these needs , the at least one application server may comprise the qualities of built - in redundancy , high - availability , high - performance distributed application services and support for complex database access . in embodiments , the system may comprise at least one product database server 85 , which is / are not particularly limited and may comprise any database server that is suitable to carry out the embodiment . the at least one product database server 85 may be , for example , the latest windows os , ms sql server , and may be fully patched and hids installed . the at least one product database server 85 may comprise the qualities of high - availability and built - in redundancy with the back - end system of the database application using client / server architecture . the back - end system performs tasks such as data analysis , storage , data manipulation , archiving , and other non - user specific tasks . in embodiments , the system may comprise at least one data storage database server 80 , which is / are not particularly limited and may comprise any database server that is suitable to carry out the embodiment . the at least one data storage database 80 server may be , for example , the latest windows os , ms sql server , and may be fully patched and hicks installed . the at least one data storage database server 80 may comprise the qualities of high - availability and built - in redundancy with the back - end system of the database application using client / server architecture . the back - end system performs tasks such as data analysis , storage , data manipulation , archiving , and other non - user specific tasks . in embodiments , the system may comprise a mobile application 55 installed on mobile device 51 , such as a device that operates on mobile platform systems such as ios or android . mobile application 55 may be written in any known language that is suitable to execute the application on a given mobile platform . the mobile application 55 should be written with proper security controls . mobile application 55 may be distributed to mobile devices through appropriate market location and / or through appropriate media . mobile application 55 may include other features , such as security features whereby updates may be pushed out automatically to the devices where mobile application 55 is installed . mobile application 55 may be a signed application to verify the integrity of the written code and the provider . the mobile application 55 may be required to be activated prior to initial use , whereby a unique application activation code may be sent via short messages systems ( sms ). mobile application 55 may be adapted to scan bar code data printed on a product . mobile application 55 may be adapted to encrypt not only the bar code data but also the basic mobile device information , such as the device &# 39 ; s telephone number , location information in the form of coordinates and mobile device owner information such as email or residential addresses . once encrypted , the encrypted scanned bar code data and basic mobile device information are sent over a network to an application server ( not shown ) which communicates with product database server 85 . in order to maximize security of the encrypted scanned bar code data and basic mobile device information being sent , it may be desirable to send the information over the internet using wifi so as to avoid telephone companies and other similar carriers . in embodiments , the system may comprise at least one security feature , which may comprise at least one firewall , encryption technology and / or anti - malware . the at least one firewall may comprise two firewalls 70 , 88 , wherein one firewall 70 may be disposed before the application server and the other firewall 88 may be disposed between application database server 65 and product database server 85 . the encryption technology supports data encryption . this will allow for protection of purchaser and other information while the information is : 1 ) sent over a network , such as the internet ; 2 ) in rest ; and 3 ) in use . the system may comprise anti - malware on the application and database servers to protect from unwanted software and viruses such as spyware programs . in embodiments , the system may comprise at least one support desktop ( not shown ) or other type of central processing unit ( not shown ) to manage and maintain the application and database servers . application database server 65 decrypts and separates the scanned bar code data 50 and basic mobile device information , whereby the mobile device information may be sent to and stored in data storage database server 80 . for marketing purposes , data storage database server 80 may be searchable and / or sortable . the decrypted bar code data may be sent to product database server 85 that contains the unique bar code data associated with each product manufactured by a given company or entity , whereby a query may be ran against product database server 85 to determine if product database server 85 contains the unique bar coded data . in embodiments , the bar code data may be randomly generated and unique bar code data . the bar code data may be generated using an algorithm , such as a gs1 “ data matrix ” algorithm which generates two - dimensional unique and random bar code data . such bar code data may include comprehensive information and product details . the bar code data may be generated and then stored in product database server 20 , 85 and then printed and then affixed to a product . the bar code data is then printed on a label to be affixed to a product &# 39 ; s packaging or may be printed directly on the product &# 39 ; s packaging . bar code data scanning software for mobile application 25 , 55 for mobile devices may comprise the characteristics such as each download having associated therewith a unique number and requiring a telephone number receive an activation code for mobile application 25 , 55 . such information may be transmitted to product database server 20 , 85 . for example , when a genuine product is manufactured at a company &# 39 ; s manufacturing facilities , the genuine product is assigned unique and / or random bar code data that is eventually included in the company &# 39 ; s product database server prior to the genuine product ending up on the market . the genuine product is then sent off to the market so it can be sold to a customer . sometime later , a customer desires to purchase the genuine product . the customer goes to the market and identifies what is believed to be the genuine product . to verify , the customer may scan the bar code data of what is believed to be the genuine product , which is sent to a product database server . the system then queries the product database server to determine if the product database server contains the unique bar code data of what believed to be the genuine product . if the scanned bar code data is present , positive verification may be sent back to customer &# 39 ; s mobile device in the form of a sms message . if the scanned bar code is not present , negative verification may be sent back to customer &# 39 ; s mobile device in the form of a sms message . the mobile application &# 39 ; s session may be disconnected once the customer receives the positive or negative verification . since many users will recognize the meaning of “ yes ” and “ no ,” regardless of native language , using “ yes ” or “ no ” as the verification in binary form may be desired . colors may also be used for verification , such as green for positive verification and red for negative verification . since many users will recognize the meaning of “ right checkmark ” and “ x cross mark ”, regardless of native language , such verification in binary form may also be desired . languages other than english may be used for the verification . a customer may download mobile application 25 , 55 on a mobile device . in order for mobile application 25 , 55 to function , telephone number and / or email address ( or other information ) may be required for submission . after submission of such information , an enabling code may be sent to the mobile device via sms to activate mobile application 25 , 55 . a password may or may not be required . each application download may have unique coded information which may be collected and transmitted to a data storage database server . collected customer information ( such as telephone number and email ) may be stored in a data storage database server 80 , which communicates with product database server 85 , and may generate a third database automatically ( not shown ). upon scanning a product &# 39 ; s bar code data 50 , the data 50 may be converted into digital information , encrypted , and pinged against product database server 85 via internet 78 . the customer may receive information whether the bar code data matched with product database server 85 or not . if the bar code data is scanned less than 5 times , a green light with “ yes ” may appear on mobile application 55 . if the same bar code data is pinged more than 5 times , the customer may receive a notice or “ warning ” with a yellow color . if the same bar code data is pinged more than 10 times , a red light may appear with “ no ”. if the bar code data is scanned more than 10 times just “ by checkers ” and the product was not sold , the seller will have an option to send a message to reset according to a particular product ( once or twice ). when a customer scans a product &# 39 ; s bar code data , two queries will be sent out in parallel , the product information with unique application download information number may be sent to application server 60 and the product information will be pinged against product database server 85 . the embodiments described herein are also useful in applications other than counterfeit detection and consumer information , such as in law enforcement and consumer behavior . if the embodiments described herein detect counterfeit products , the location of the counterfeit products may be obtained by modification of the embodiments to include tracking features . such tracking features may include longitude and latitude coordinates ( via gps ) at the time of scanning a desired product . the law enforcement community may be interested in knowing the origin or location of the point of sale for desired products determined to be counterfeit . moreover , the commerce community may be interested in statistics related to the origin or location of the point of sale for desired products determined to be counterfeit . the embodiments described herein may be modified for consumer behavior purposes . for instance , once a desired product is scanned using the embodiments described herein , a coupon may be sent to the consumer &# 39 ; s device to influence decision making . the offer of an instant discount or reduction in price in real - time may spur a consumer to purchase a desired product . also , offers may be sent to a consumer &# 39 ; s device that are related to a scanned product . in other words , if a consumer scans product that is a handbag , an offer of an instant discount or reduction in price for a corresponding wallet ( that goes with the handbag ) may be sent to the consumer &# 39 ; s device . the advertising community may also be interested in the collected customer information ( such as telephone number and email ). for instance , the aforementioned third database ( not shown , generated by communication between data storage database server 80 and product database server 85 ) may include customer information for customers who purchased , for example , handbags . advertisements may then be sent to the consumer &# 39 ; s device for handbags and related accessories . fig3 shows an embodiment of a system , whereby a user 40 can enter product information using their local computer system 41 . the product information is then sent over internet 78 using hyper text transfer protocol ( http ) via an encrypted channel with secure sockets layer protocol 3 . 0 ( ssl ) to an external network 79 . the user 40 who can generate barcode using product information is usually an authorized personnel from the manufacturer . in embodiments , the external network 79 may comprise one or more instances of gateway server 71 that processes intelligent routing of application programming interface ( api ) request . the gateway server may also handle user authentication using oauth2 protocol . the gateway server 71 , with the help of one or more discovery server instances 73 , routes barcode generation api requests to one or more instances of barcode service 62 . the oauth2 protocol specification is available at https :// tools . ietf . org / html / draft - ietf - oath - v2 - 31 . oauth2 is used as an authorization framework that enables applications to obtain limited access to user accounts on an hi ip enabled service , such as linkedin , facebook , github , and our own ascthem . it works by delegating user authentication to the service that hosts the user account , and authorizing third - party applications to access the user account . oauth2 provides authorization flows for web and desktop applications , and mobile devices . the external network 79 may also comprise one or more instances of a configuration server that supplies environment ( development , staging or production ) specific property values 76 to the barcode service 62 that request for environment specific property . the barcode service 62 is also a discovery client 62 a that gets automatically discovered by the service registration and discovery server 73 . the barcode service 62 further sends the generated barcode data request via external message gateway 68 to a manufacturer &# 39 ; s network via internet 78 to store it in a product database 66 that is installed behind a firewall 67 . the product database 66 is also used for matching of barcode data when the user 40 scans a particular product barcode . the user 40 ( manufacturer authorized personnel ) can also query for a particular product barcode data 50 from product database 66 . the user 40 can also request for a batch of product barcodes for printing labels on a tangible surface . in embodiments , the system uses a combination of one - way hash digest , sha - 512 and salt algorithms to apply encryption technology to encrypt the generated barcode data before it gets stored in product database 66 . an example configuration of encryption algorithm using a third party library called jasypt is shown in fig4 . in embodiments , the barcode data is randomly and uniquely generated . the barcode data can be generated using any existing standard algorithm such as gs1 “ data matrix ” algorithm , which generates two - dimensionally unique and random barcode data 50 . the barcode generator uses a combination of global trade item number , batch or lot number , packaging month , expiration month , and country of origin to come p with a serial number and an additional random alpha numeric identification number . table 1 shows such a gs1 data matrix . the aforementioned serial number and additional random alpha numeric identification number together becomes a very large unique number and is a part of the generated barcode for each label or package , as shown in fig5 . the barcode data 50 that comprises comprehensive product information is stored in product database 66 . this barcode data is used for further querying and printing labels on a tangible surface to affix to a product directly or indirectly . this barcode data 50 can also be printed on a product packaging . the barcode may also be displayed as a gif image and the algorithm used for such a gif display is shown in fig6 . barcode data scanning software for mobile application 55 for mobile devices comprise the characteristics such as each download having associated with a unique number and an authentication means to receive an activation code for the mobile application 55 . fig7 shows an embodiment of a system , whereby a user 40 can scan a physical product barcode data 50 using a mobile device 51 loaded with a mobile scanning application 55 . the scanned barcode data 50 may be sent over internet 78 via telecommunication ( telco ) gateway 56 using hypertext transport protocol ( http ) over encrypted channel using secured sockets layer 3 . 0 and transmitted to external network 79 . this external network 79 comprises a load balancer 77 . external network 79 may also comprise one or more instances of a gateway server 71 that processes intelligent routing . the gateway server 71 may also have a capability to authenticate the incoming request via a protocol such as oauth2 . a typical user who does product verification is a customer who likes to verify the genuineness of the product that they are buying . in embodiments , the product verification request coming from public internet 78 reaches the load balancer 77 in the external network 79 . the request is the sent to the gateway server 71 . the external network 79 may also comprise a service registration and discovery server 73 . this registration and discovery server 73 keeps track of all internal software services installed within the external network 79 . the gateway server 71 may use service registration and discovery server 73 to intelligently route http requests using a client side load balancer 74 by dynamically identifying the application server port and the server hostname internet protocol ( ip ) address or a dynamic name service ( dns ) name of the server where application service ( for example verification composite service 90 ) is installed and running within the external network 79 . in embodiments , the system may comprise one or more instances of each software service to carry out the embodiment . each software service available in the system landscape may be virtualized using container based technology such that there will not be any port conflicts between different instances of application server running within the same server host . with all application service instances become available and registered with the discovery server , the gateway server 71 can intelligently route api requests at scale on demand basis using client side load balancer 74 to the appropriate application service , for example verification composite service 90 . in embodiments , the system may comprise one or more instances of verification composite service 90 . this verification composite service 90 upon receiving request from gateway server 71 and with the information available from the discovery server 73 , sends the request to one or more instances of verification service 61 and the app user service 63 respectively . the verification composite service 90 is also a discovery client 90 a that gets automatically discovered by the service registration and discovery server 73 . in embodiments , the system may comprise at least one database 64 to store detected counterfeit product information and its geographic locations . when the user scans a product barcode data 50 , the verification service 61 sends out a search query to the manufacturer network via external message gateway 68 . the query request is then sent via public internet 78 to the manufacturer product database 66 via a firewall 67 for matching the scanned product &# 39 ; s unique barcode information . if a match is found , the verification service 61 will receive product match information from manufacturer product database 66 which gets sent back to the customer mobile device 51 and the information gets displayed as a green check mark on the mobile scanning app 55 user interface . the user with the product match information available on their mobile device , can then decide whether to purchase an authentic product or not . if there is no match available for the requested product for verification , the verification service sends back the results of the match to the user &# 39 ; s mobile device as a red check mark to indicate it as a potential counterfeited product . at this point , the customer can decide whether to walk away from buying a potential counterfeited product or not . the verification service also records the potential counterfeited product info in the counterfeit database 64 . if the embodiments described herein detect counterfeit products , the location of the counterfeit products may be obtained by modification of the embodiments to include tracking features . such tracking features may include longitude and latitude coordinates via global positioning system ( gps ) at the time of scanning a desired product . various organizations , governmental or non - governmental , may be interested in knowing the origin or the point of sale location of the counterfeit product . the counterfeit information is stored in counterfeit database 64 . this information can then be utilized by the product manufacturer for curbing the availability of counterfeited products in the market . by curbing the availability of counterfeited products , the manufacturer will ultimately benefit them financially and help preserve their brand image . in embodiments , the system may comprise at least one app user database server 65 to house the customer information . when the scanned product data 50 is sent to verification composite service 90 , the app user specific information such as product scan location is also captured in app user database 65 through app user service 63 . the verification composite service 90 makes use of available client side load balancing facility to send out search request to verification service 61 as well as sends out app user information to update app user database 65 . the at least one user database 65 running on linux , unix or windows os , ms sql server and may be fully patched with security updates . the at least one app user database server 65 may comprise the qualities of high - availability and built - in redundancy . this information available in app user database may be used to perform tasks such as data analysis , storage , data manipulation , archiving and other marketing related tasks . in embodiments , the system decrypts and separates the scanned barcode data 50 and user specific information , whereby the user information may be sent to app user service 63 and gets stored in user database 65 . the user database 65 is a searchable and / or sortable database . the decrypted barcode data may be sent to product database 66 over an encrypted internet channel using hi ip and ssl 3 . 0 protocol via external message gateway 68 to the manufacturer &# 39 ; s network . the product database 66 contain the unique random barcode data ( for example gs1 compliant ) associated with each product manufactured by a given company or entity , whereby a query may be run via verification service 61 against product database 66 to determine if product database 66 contains the unique barcode data . in embodiments , the system may also comprise one or more instances of a configuration server 72 . the configuration server will supply environment ( example : development , staging or production ) specific property values 76 to the appropriate application service that request for such properties . this environment specific properties 76 may be available as name value pairs ( example : application . service . name = verification service ) in any commercially or open source available version control software ( not shown ). the validation of a product involves three steps . first step is the identification of the company to which the product belongs to by using the global trade item number ( gtin ). if this identification is successful , then the system validates the serial number issued with the gtin in the barcode . thirdly , an additional id will be validated if one is issued against the serial number that the system just validated . if all the levels are successful then the product is marked as genuine during verification . the combination of gtin , serial no , additional id validations will make the barcode data unique in the system and is difficult to crack . serial number and additional id are unique for a product manufacturer . fig8 shows an embodiment of a system , whereby a user 40 can request for a batch of product barcodes for printing and labelling . the user 40 issues a search request based on product identifier over internet 78 using http via encrypted channel with secure sockets protocol 3 . 0 to external network 79 . the user 40 who typically request for a batch of product barcodes for printing and labelling is a manufacturer authorized personnel . in embodiments , the external network 79 may comprise one or more instances of gateway server 71 where intelligent routing of api request happens . this layer may also handle user authentication . the gateway server 71 , with the help of one or more discovery server instances 73 , routes barcode finder api request to one or more instances of barcode finder service 91 . the external network 79 may also comprise a load balancer , one or more instances of a configuration server that supplies environment ( development , staging or production ) specific property values 76 to the barcode finder service 91 that request for environment specific properties . this environment specific properties 76 may be available as name value pairs ( application . service . name = barcode finder service ) in any commercially or open source available version control software ( not shown ). the barcode finder service 91 further sends the search request via external message gateway 68 to the manufacturer network via internet 78 to retrieve a batch of product barcodes from the product database 66 that is installed and functioning behind a firewall 67 . the database 66 is also used for matching of barcode data when the customer 40 scans a particular product barcode using mobile device 51 with a mobile application 55 ( see fig7 ). the barcode finder service 91 is also a discovery client 91 a that gets automatically discovered by the service registration and discovery server 73 . once the user 40 successfully retrieves a batch of product barcodes over internet 78 using http secured with secure sockets layers ( ssl 3 . 0 ) protocol into a computer 41 , the user 40 can further initiate another api request to perform printing of labels . the opportunities available to the user 40 to save random unique barcodes in a digital format are advantageous . the user 40 can issue a print command to a print server 42 that is available on a network . this print server may be connected to one or more printers that can print random unique product barcode labels and can directly or indirectly be affixed on a product 50 . fig9 shows an embodiment of a system that may help change customer &# 39 ; s buying behavior at a point - of - sale . the user 40 , who is interested in verifying the authenticity of the product can user a mobile device loaded with the mobile scanning application 55 to scan the barcode data 50 from displayed on the product . the scanned barcode data 50 may be sent over internet 78 via telecommunication gateway 56 using hypertext transport protocol ( http ) over an encrypted channel using secured sockets layer 3 . 0 and transmitted to external network 79 that comprises a load balancer 77 . external network 79 may also comprise one more instances of a gateway server 71 . this gateway server 71 may also have a capability to authenticate the incoming request via a standard protocol such as oauth2 . the external network 79 may also comprise a service registration and discovery server 73 . this registration and discovery server 73 keeps track of all internal software services installed within the external network 79 . the gateway server 71 may use service registration and discovery server 73 to identify the application server port and the server hostname internet protocol ( ip ) address or dynamic name service ( dns ) name of the server where application service , for example verification composite service 90 is installed and running . with this facility available in the external network 79 system landscape , the gateway server 71 can do intelligent routing of http requests coming from public internet 78 . in embodiments , the system may comprise one or more instances of each software service to carry out the embodiment . each software service available in the system landscape may be virtualized using container based technology such that there will not be any port conflicts between different instances of application server running within the same server host . with all application service instances become available and registered with the discovery server , the gateway server 71 can intelligently route api requests at scale on demand basis using client side load balancer 74 to the appropriate application service , for example verification composite service 90 . in embodiments , the system may comprise one or more instances of verification composite service 90 . this composite service 90 upon receiving request from gateway server 71 and with the information available from the discovery server 73 , it sends the request to one or more instances of verification service 61 and app user service 63 respectively using a client load balancer 74 setup . the verification composite service 90 is also a discovery client 90 a that gets automatically discovered by the service registration and discovery server 73 . in embodiments , the system may comprise at least one counterfeit database 64 to store detected counterfeited product information and its geographic locations . when the customer scans a product barcode data 50 , the verification service 61 sends out a search query to the manufacturer network via external message gateway 68 . the query request is then sent via internet 78 to manufacturer product database 66 via a firewall 67 for matching the information of the scanned product . if there is a match , the verification service 61 will receive product match information from manufacturer product database 66 and sends back to the customer &# 39 ; s mobile device 51 and the information gets displayed on the mobile app 55 user interface . if there is no match , the verification service will mark it as a potential counterfeited product in a counterfeit database 64 and sends a signal back to the customer &# 39 ; s mobile device 51 and displays , using the interface of the mobile app 55 , indicating that the scanned product is a counterfeit . if the embodiments described herein detect counterfeit products , the location of the counterfeit products may be obtained by modification of the embodiments such as tracking features . such tracking features may include longitude and latitude coordinates ( via gps ) at the time of scanning a desired product . the counterfeit information is stored in counterfeit database server 64 . in embodiments , the system may comprise at least one app user database server 65 to house the customer information . when the scanned product data 50 is sent to verification composite service 90 , the app user specific information such as longitude , latitude of customer location , are also captured in app user database 65 through app user service 63 . the verification composite service 90 makes use of available client side load balancing facility to send out search request to verification service 61 as well as send out app user information to update app user database 65 . the app user database provides a powerful data intelligence platform for manufacturers to do precision marketing for their products . at least one user database 65 runs on linux , unix or windows os , ms sql server and may be fully patched and security updates installed . the app user database 65 , counterfeit database 64 and coupon database 93 may comprise the qualities of high - availability and built - in redundancy . this information available in user database server may be used to perform tasks such as data analysis , storage , data manipulation , archiving and other marketing related tasks . the coupon database 93 is used to account for tracking the issuance of discount coupons to customers who verifies the authenticity of the product that they are buying . a discount coupon functionality is an individualized feature that may become an additional leverage for the manufacturer in helping the customer buy the product at a discount price . in embodiments , the system decrypts and separates the scanned barcode data 50 and user specific information , whereby the user information may be sent to app user service 63 and gets stored in user database 65 . the user database 65 is a searchable and / or sortable . the decrypted barcode data may be sent to product database server 66 over encrypted internet channel using http and ssl 3 . 0 protocol via external message gateway 68 to the manufacturer network . the product database 66 contain the unique barcode data associated with each product manufactured by a given manufacturer or an entity , whereby a query may be run via verification service 61 against product database server 66 to determine if product database 66 contains the unique barcode data . in embodiments , the verification composite service 90 sends back product verification information to the customer &# 39 ; s mobile device 51 . while sending the verification data , an individualized discount coupon 52 , say for example 5 % is also generated using coupon service 92 and sends it to customer &# 39 ; s mobile phone 51 loaded with custom mobile scanning application 55 . this individualized coupon mechanism is designed to motivate the customer 40 to make purchasing decisions . this individualized coupon may not be available to all customers and could be limited to selective users who scan the product barcode data 50 with their mobile device 51 loaded with scanning mobile app 55 . the coupon service 92 is also a discovery client 92 a that gets automatically discovered by the service registration and discovery server 73 . in embodiments , if the verification service 61 is unavailable for processing the verification request , the system will not invoke the coupon service 92 and sends a message back to the mobile user 40 to try the verification at a later time . to meet high customer demand , there may be at least two instances of coupon service 92 within the external network 79 . the coupon reward information is maintained in its own database 93 . in embodiments , in order to protect sensitive data , all communication originating from the mobile device 51 to external network 79 are secured using industry standard secure sockets layer ( transport layer security 3 . 0 ) protocol . fig1 shows an embodiment of a system , whereby a customer 40 can either scan a product barcode data 50 using a mobile device 51 loaded with a mobile scanning application 55 or when the customer 50 buys a product from an online storefront 39 , the online store can initiate a product verification at the click of a button initiated by the customer 50 through their online store system . the scanning can also happen as and when the product reaches the online store warehouse 38 and the retailer can use their mobile device to scan the product authenticity just like a customer . the scanned barcode data 50 from the mobile device may be sent over internet 78 via telecommunication gateway 56 using hypertext transport protocol ( http ) over encrypted channel using secured sockets layer 3 . 0 and transmitted to external network 79 . if the verification happens via online storefront , the information gets sent via internet 78 to the external network 79 using hypertext transport protocol ( http ) over an encrypted channel using secured sockets layer 3 . 0 . this external network 79 comprises a load balancer 77 . external network 79 may also comprise one or more instances of a gateway server 71 that process intelligent routing of application programming interface ( api ) requests . this gateway server 71 may also have a capability to authenticate the incoming request via a standard protocol such as oauth2 . the external network 79 may also comprise a service registration and discovery server 73 . this registration and discovery server 73 keeps track of all internal software services installed within the external network 79 . the gateway server 71 may use service registration and discovery server 73 to intelligently route http requests sing a client side load balancer 74 by dynamically identifying the application server port and the server hostname internet protocol ( ip ) address or a dynamic name service ( dns ) name of the server where application service ( for example verification composite service 90 ) is installed and running within the external network 79 . in embodiments , the system may comprise one or more instances of each software service to carry out the embodiment . each software service available in the system landscape may be virtualized using container based technology such that there will not be any port conflicts between different instances of application server running within the same server host . with all application service instances become available and registered with the discovery server , the gateway server 71 can intelligently route application programming interface ( api ) requests at scale on demand basis using client side load balancer 74 to the appropriate application service , for example verification composite service 90 . in embodiments , the system may comprise one or more instances of verification composite service 90 . this verification composite service 90 upon receiving request from gateway server 71 and with the information available from the discovery server 73 , sends the request to one or more instances of verification service 61 and app user service 63 respectively . the verification composite service 90 is also a discovery client 90 a that gets automatically discovered by the service registration and discovery server 73 . in embodiments , the system may comprise at least one counterfeit database 64 to store scanned counterfeited product information and its geographic locations . when the customer scans a product barcode data 50 , the verification service 61 sends out a search query to the manufacturer &# 39 ; s network via external message gateway 68 . the query request is then sent via internet 78 to manufacturer product database 66 via a firewall 67 for matching the scanned product . if there is a match , the verification service 61 will receive product match information from manufacturer &# 39 ; s product database 66 which gets sent back to the customer mobile device 51 and the information gets displayed on the mobile device using the scanning app 55 user interface as a green check mark to indicate the product is genuine . the verification service 61 is also a discovery client 61 a that gets automatically discovered by the service registration and discovery server 73 . if there is no match found , the verification service will mark it as a potential counterfeited product in counterfeit database 64 and display counterfeit information on the mobile device using the scanning app 55 user interface as a red mark . if the embodiments described herein detect counterfeit products , the location of the counterfeit products may be obtained by modification of the embodiments to include tracking features . such tracking features may include longitude and latitude coordinates via global positioning system ( gps ) of the location where a product was scanned . various stakeholders may be interested in knowing the origin or location of the point of sale for desired products determined to be counterfeit . the counterfeit information is stored in counterfeit database server 64 . this counterfeit information can then be utilized by the product manufacturer for curbing the availability of counterfeited products in the market . by curbing the availability of counterfeited products , the manufacturer will ultimately benefit them financially and help preserve their brand image . in embodiments , the system may comprise at least one app user database server 65 to house the customer information . when the scanned product data 50 is sent to verification composite service 90 , the app user specific information such as longitude , latitude of customer location are also captured in app user database 65 through app user service 63 . the verification composite service 90 makes use of available client side load balancing facility to send out search request to verification service 61 as well as sends out app user information to update app user database 65 . the at least one user database 65 is linux , unix or windows os , or ms sql server and may be fully patched with security updates installed . the at least one app user database server 65 may comprise the qualities of high - availability and built - in redundancy . this information available in user database server may be used to perform tasks such as data analysis , storage , data manipulation , archiving and other marketing related tasks . in embodiments , the system decrypts and separates the scanned barcode data 50 and user specific information , whereby the user information may be sent to app user service 63 and gets stored in user database 65 . for marketing purposes this user database 65 may be searchable and / or sortable . the decrypted barcode data may be sent to product database server 66 over encrypted internet channel using http and ssl 3 . 0 protocol via external message gateway 68 to the manufacturer network . the product database 66 contain the unique random barcode data associated with each product manufactured by a given company or entity , whereby a query may be run via verification service 61 against product database server 66 to determine if product database 66 contains the unique barcode data . the app user service 63 is also a discovery client 63 a that gets automatically discovered by the service registration and discovery server 73 . in embodiments , the system may also comprise one or more instances of a configuration server 72 . this configuration server will supply environment ( development , staging or production ) specific property values 76 to the appropriate application service that request for the same . this environment specific properties 76 may be available as name value pairs ( application . service . name = verification service ) in any commercially or open source available version control software . it now be apparent that new , improved , and nonobvious systems have been described in this specification with sufficient particularity as to be understood by one of ordinary skill in the art . moreover , it will be apparent to those skilled in the art that modifications , variations , substitutions , and equivalents exist for features of the systems which do not materially depart from the spirit and scope of the embodiments disclosed herein . accordingly , it is expressly intended that all such modifications , variations , substitutions , and equivalents which fall within the spirit and scope of the invention as defined by the appended claims shall be embraced by the appended claims .