Might make sense to port https://github.com/zxing to Go? Seems a popular library and I think it was created by Google folks.
On Tuesday, December 26, 2017 at 11:29:44 AM UTC-5, Frank Davidson wrote: > > I'm not sure we could encrypt codes for them as we would not have their > private key? I think we could provide an CLI executable that could make it > really easy, though. on virtually any OS (the benefits of Go!)... > > Also, I agree on the advertising but it's not a deal breaker for me if > they did. I think that the ability of the manufacturer to provide > additional info about that bottle, e.g., expiration date, place of > manufacture, counter indicators and drug interactions, user instructions > and self-help videos, etc., would be quite useful and beneficial to the end > users? > > I'm not sure why we would need to involve distributors? Maybe you can > explain that idea more? If the code is on the bottle, how would it matter > what distributor delivers it, assuming it's a somewhat tamper-proof bottle? > > Cheers! > > Frank > > On Tuesday, December 26, 2017 at 11:03:22 AM UTC-5, matthe...@gmail.com > wrote: >> >> For implementation I’m of the opinion that we should own everything >> besides printing the labels. There is only the one path of data between the >> consumer and our server+database in a cloud center. We nor the >> manufacturers should be able to advertise to consumers through this, and >> consumers should be able to understand the barcode no matter what chain got >> it to them. We have to build consumer trust for these barcodes to matter. >> >> I live in the USA, but the report centers around Kenya. If we’re not >> talking about one government then handling regulation is a key and large >> part of this project. If we’re working in more than one country we’ll need >> to have language translation done. I still think we need a connected >> partner organization that's done such things before. >> >> Even the manufacturers and distributors may have a limited connection to >> our servers. What kind of operating systems are these people using to print >> labels? We can’t be a manufacturing bottleneck, so perhaps we’d need to >> provide blocks of barcodes instead of individually requested ones. Perhaps >> a worker goes somewhere else and walks in a drive with the barcodes. >> >> That barcode library seems not done - we’ll probably need to support our >> own. I assume this will be open source and those using the system will want >> to review the code. >> >> Here’s my take on the process: >> >> 1. Manufacturer asks us for a barcode block targeting a distributor for a >> product >> 2. We generate that number of PNG barcodes containing individual UUIDs >> that in our database is matched to a product ID, manufacturer ID, and >> distributor ID >> 3. Manufacturer downloads the block and applies the images to their label >> printing process >> 4. Distributor scans a subset of these barcodes and for each sends us a >> verification request with the scanned UUID and the three IDs independently >> provided >> 5. We mark each as distributor scanned in our database, and now we know a >> block has at least some scanned, or we indicate to the distributor that >> there’s a problem >> 6. Distributor distributes product with original manufacturer’s barcode >> intact, scanned or not >> 7. Consumer uses our app to scan the barcode, and we then tell them if >> the distributor verified part of the block, if it has been previously >> scanned by a consumer, who the distributor is, what the expected product >> is, and who made it, all of which can be compared to the label. >> >> Matt >> >> On Tuesday, December 26, 2017 at 9:00:17 AM UTC-6, Frank Davidson wrote: >>> >>> Yes, that's the Aztec library I saw for creating the codes. Looking now >>> for a good OS library for reading them... >>> >>> I'm thinking the sequence would go something like this: >>> >>> >>> 1. Manufacturer creates key pair >>> 2. They register their public key with our central server >>> 3. The public key is posted on a URL REST endpoint on their >>> certified domain >>> 4. They download our code/library which enables them to create >>> unique Aztec codes at manufacturing speed signed with their public key >>> 5. The Aztec code payload would be JSON containing the above >>> mentioned URL, by default a UUID, and any other metadata they would have >>> the space to include. The payload would be signed with their ECDSA >>> signature. >>> 6. That unique Aztec code gets, ideally, printed on an individual >>> bottle but could also maybe be code for a shipment or pallet or some >>> other >>> grouping if individual bottles are cost prohibitive for some >>> manufacturers >>> 7. An individual or small pharmacy upon receipt of the drugs would >>> scan the Aztec code in our "App" or website >>> 8. If the signature checks out they are forwarded to the URL in the >>> JSON payload >>> 9. The cert of the domain is verified >>> 10. The rest of the JSON payload is relayed to the manufacturer. >>> 11. The manufacturer can then track the individual bottle and/or >>> offer other info/services to the individual user. >>> >>> Thoughts, comments, and criticisms welcome! >>> >>> Frank >>> >>> >>> On Monday, December 25, 2017 at 4:46:49 PM UTC-5, Tamás Gulácsi wrote: >>>> >>>> https://github.com/boombuler/barcode is a MIT licensed Aztec code >>>> generator. >>>> >>>> You'll have to become a trusted central authority for the drug >>>> companies - or at least provide the infrastructure for the government to >>>> force such a central registry for uuids and public keys. >>>> >>>> I think here the technical solution is almost ready, you have to >>>> assemble already existing components. The bigger problem is to build the >>>> concept and make a lot of important people accept it. >>>> >>>> -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.