Re: Is it possible to transfer data by using light
On Sun, Sep 20, 2015 at 9:55 PM, Jens Alfkewrote: > But honestly, if you're going this route, it will be much faster to > transmit QR codes, since each code contains thousands of bits. > Especially given that recent versions of iOS can detect and decode QR codes automatically, much like face detection. https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVMetadataMachineReadableCodeObject_Class/index.html https://developer.apple.com/library/ios/documentation/QuartzCore/Reference/CIQRCodeFeature/ > On Sep 20, 2015, at 7:21 PM, ico wrote: > > > > After reading all of the replies, no one mentioned how to use iPhone to > > detect the light changes (bright and dark) in codes, I just have no clue > > how to make it works as long as I remember developers have no right to > > access the light sensor, so I guess we have to use camera to achieve > this, > > but I just don't know how. Can anyone point me to something to read so I > > can start digging into this and make the whole thing start to work? > > > > Thank you all. > > > > On Fri, 18 Sep 2015 at 20:38 Michael David Crawford < > mdcrawf...@gmail.com> > > wrote: > > > >> Do iOS devices support Trusted Computing in hardware? If so is it > >> accessible to userspace apps? > >> > >> If so, you could store your phones secret in a write-only register. > >> For the profoundly paranoid, even the duplication of your storage > >> would not yield your phone's secret, The Bad Guy would need your > >> personal phone. > >> > >> Modern Macs - to the best of my knowledge - provide trusted computing > >> chips, on can access them from userspace with a modest bit of code. > >> Michael David Crawford P.E., Consulting Process Architect > >> mdcrawf...@gmail.com > >> http://mike.soggywizard.com/ > >> > >> One Must Not Trifle With Wizards For It Makes Us Soggy And Hard To > >> Light. > >> > >> > >>> On Fri, Sep 18, 2015 at 3:12 AM, Maxthon Chan > wrote: > >>> The "over-the-shoulder" issue can be avoided using what is effectively > a > >> Diffie-Hellman on top of QR codes. This can be done using front-facing > >> cameras on two devices placed face-to-face. > >>> > >>> Sent from my iPhone > >>> > On Sep 18, 2015, at 00:46, Pascal J. Bourguignon < > p...@informatimago.com> > >> wrote: > > > > > On 17/09/15 17:32, Michael David Crawford wrote: > > And what the man said: I myself experience seizures in which I lose > > consciousness for as long as three weeks. Before they were diagnosed > > I would experience seizures while driving my car then suddenly find > > myself in unfamiliar places without any clue how I got there. > > > > I don't know for sure but strongly suspect that modern computer user > > interfaces caused my seizure disorder as well as that of my cousin. > > Seizures are not otherwise found among any of our blood relatives. > > But then if you don't use the whole screen, but only the area that > should be in front of the camera of the superposed phone, then users > shouldn't be subjected to much stroboscopic light. > > Having the objective so close from the light source does not allow > the camera to distinguish pixels; for example, a black to white > transition takes about 1/10 of the height of the camera view. > But this means that you might still able to transmit about ten pixels > >> at once, > and you can multiply that by a number of color that you can detect > >> reliably > being that out of focus. Basically, I would expect 8 colors to be > >> clearly > distinguishable. Actually, probably more colors should be > >> distinguishable, > if you can filter out the interferences due to the grid of the camera > >> vs. > the grid of the screen. So assume 4 bits for the color, and 9 areas, > that's 36 bit/moment, and you should be able to do 30 moment/second, > for a total of 1080 bit/second. A little less for ECC, about 1 KB/s > is not too bad. It's good enough to transmit a good private key, and > >> then > transfer the data thru wifi. > > > Of course, if you move the camera out to focus on the screen, then > you can transmit at a higher speed things like QR codes, but they > could also be seen over the shoulder by high resolution cameras. > > -- > __Pascal J. Bourguignon__ > http://www.informatimago.com/ > > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/max%40maxchan.info > > This email sent to m...@maxchan.info > >>> > >>>
Re: Is it possible to transfer data by using light
> On Sep 21, 2015, at 8:54 AM, Sixten Ottowrote: > > Especially given that recent versions of iOS can detect and decode QR codes > automatically, much like face detection. And Mac OS, too. I just looked up some code I wrote a few months ago to do QR-code scanning. Here’s the guts of it: https://gist.github.com/snej/6440a2e041222018cc7c And here’s how to generate a QR-code: https://gist.github.com/snej/c210cc4cbfe8fd277186 —Jens ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
On Sep 21, 2015, at 11:54 AM, Sixten Otto wrote: > On Sun, Sep 20, 2015 at 9:55 PM, Jens Alfkewrote: > >> But honestly, if you're going this route, it will be much faster to >> transmit QR codes, since each code contains thousands of bits. >> > > Especially given that recent versions of iOS can detect and decode QR codes > automatically, much like face detection. > > https://developer.apple.com/library/ios/documentation/AVFoundation/Reference/AVMetadataMachineReadableCodeObject_Class/index.html > > https://developer.apple.com/library/ios/documentation/QuartzCore/Reference/CIQRCodeFeature/ IIRC, we tested that over a year ago with great success under iOS. ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
After reading all of the replies, no one mentioned how to use iPhone to detect the light changes (bright and dark) in codes, I just have no clue how to make it works as long as I remember developers have no right to access the light sensor, so I guess we have to use camera to achieve this, but I just don't know how. Can anyone point me to something to read so I can start digging into this and make the whole thing start to work? Thank you all. On Fri, 18 Sep 2015 at 20:38 Michael David Crawfordwrote: > Do iOS devices support Trusted Computing in hardware? If so is it > accessible to userspace apps? > > If so, you could store your phones secret in a write-only register. > For the profoundly paranoid, even the duplication of your storage > would not yield your phone's secret, The Bad Guy would need your > personal phone. > > Modern Macs - to the best of my knowledge - provide trusted computing > chips, on can access them from userspace with a modest bit of code. > Michael David Crawford P.E., Consulting Process Architect > mdcrawf...@gmail.com > http://mike.soggywizard.com/ > > One Must Not Trifle With Wizards For It Makes Us Soggy And Hard To > Light. > > > On Fri, Sep 18, 2015 at 3:12 AM, Maxthon Chan wrote: > > The "over-the-shoulder" issue can be avoided using what is effectively a > Diffie-Hellman on top of QR codes. This can be done using front-facing > cameras on two devices placed face-to-face. > > > > Sent from my iPhone > > > >> On Sep 18, 2015, at 00:46, Pascal J. Bourguignon > wrote: > >> > >> > >> > >>> On 17/09/15 17:32, Michael David Crawford wrote: > >>> And what the man said: I myself experience seizures in which I lose > >>> consciousness for as long as three weeks. Before they were diagnosed > >>> I would experience seizures while driving my car then suddenly find > >>> myself in unfamiliar places without any clue how I got there. > >>> > >>> I don't know for sure but strongly suspect that modern computer user > >>> interfaces caused my seizure disorder as well as that of my cousin. > >>> Seizures are not otherwise found among any of our blood relatives. > >> > >> But then if you don't use the whole screen, but only the area that > >> should be in front of the camera of the superposed phone, then users > >> shouldn't be subjected to much stroboscopic light. > >> > >> Having the objective so close from the light source does not allow > >> the camera to distinguish pixels; for example, a black to white > >> transition takes about 1/10 of the height of the camera view. > >> But this means that you might still able to transmit about ten pixels > at once, > >> and you can multiply that by a number of color that you can detect > reliably > >> being that out of focus. Basically, I would expect 8 colors to be > clearly > >> distinguishable. Actually, probably more colors should be > distinguishable, > >> if you can filter out the interferences due to the grid of the camera > vs. > >> the grid of the screen. So assume 4 bits for the color, and 9 areas, > >> that's 36 bit/moment, and you should be able to do 30 moment/second, > >> for a total of 1080 bit/second. A little less for ECC, about 1 KB/s > >> is not too bad. It's good enough to transmit a good private key, and > then > >> transfer the data thru wifi. > >> > >> > >> Of course, if you move the camera out to focus on the screen, then > >> you can transmit at a higher speed things like QR codes, but they > >> could also be seen over the shoulder by high resolution cameras. > >> > >> -- > >> __Pascal J. Bourguignon__ > >> http://www.informatimago.com/ > >> > >> ___ > >> > >> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > >> > >> Please do not post admin requests or moderator comments to the list. > >> Contact the moderators at cocoa-dev-admins(at)lists.apple.com > >> > >> Help/Unsubscribe/Update your Subscription: > >> https://lists.apple.com/mailman/options/cocoa-dev/max%40maxchan.info > >> > >> This email sent to m...@maxchan.info > > > > ___ > > > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > > > Please do not post admin requests or moderator comments to the list. > > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > > > Help/Unsubscribe/Update your Subscription: > > https://lists.apple.com/mailman/options/cocoa-dev/mdcrawford%40gmail.com > > > > This email sent to mdcrawf...@gmail.com > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/jche128%40gmail.com > > This email sent to jche...@gmail.com ___ Cocoa-dev
Re: Is it possible to transfer data by using light
I don't think the ambient light sensor would be sensitive enough for this anyway, so the camera is the right thing to use. Look into the AVFoundation framework; it has some classes for setting up a video feed from the camera and receiving frames. I believe there's sample code. But honestly, if you're going this route, it will be much faster to transmit QR codes, since each code contains thousands of bits. —Jens > On Sep 20, 2015, at 7:21 PM, icowrote: > > After reading all of the replies, no one mentioned how to use iPhone to > detect the light changes (bright and dark) in codes, I just have no clue > how to make it works as long as I remember developers have no right to > access the light sensor, so I guess we have to use camera to achieve this, > but I just don't know how. Can anyone point me to something to read so I > can start digging into this and make the whole thing start to work? > > Thank you all. > > On Fri, 18 Sep 2015 at 20:38 Michael David Crawford > wrote: > >> Do iOS devices support Trusted Computing in hardware? If so is it >> accessible to userspace apps? >> >> If so, you could store your phones secret in a write-only register. >> For the profoundly paranoid, even the duplication of your storage >> would not yield your phone's secret, The Bad Guy would need your >> personal phone. >> >> Modern Macs - to the best of my knowledge - provide trusted computing >> chips, on can access them from userspace with a modest bit of code. >> Michael David Crawford P.E., Consulting Process Architect >> mdcrawf...@gmail.com >> http://mike.soggywizard.com/ >> >> One Must Not Trifle With Wizards For It Makes Us Soggy And Hard To >> Light. >> >> >>> On Fri, Sep 18, 2015 at 3:12 AM, Maxthon Chan wrote: >>> The "over-the-shoulder" issue can be avoided using what is effectively a >> Diffie-Hellman on top of QR codes. This can be done using front-facing >> cameras on two devices placed face-to-face. >>> >>> Sent from my iPhone >>> On Sep 18, 2015, at 00:46, Pascal J. Bourguignon >> wrote: > On 17/09/15 17:32, Michael David Crawford wrote: > And what the man said: I myself experience seizures in which I lose > consciousness for as long as three weeks. Before they were diagnosed > I would experience seizures while driving my car then suddenly find > myself in unfamiliar places without any clue how I got there. > > I don't know for sure but strongly suspect that modern computer user > interfaces caused my seizure disorder as well as that of my cousin. > Seizures are not otherwise found among any of our blood relatives. But then if you don't use the whole screen, but only the area that should be in front of the camera of the superposed phone, then users shouldn't be subjected to much stroboscopic light. Having the objective so close from the light source does not allow the camera to distinguish pixels; for example, a black to white transition takes about 1/10 of the height of the camera view. But this means that you might still able to transmit about ten pixels >> at once, and you can multiply that by a number of color that you can detect >> reliably being that out of focus. Basically, I would expect 8 colors to be >> clearly distinguishable. Actually, probably more colors should be >> distinguishable, if you can filter out the interferences due to the grid of the camera >> vs. the grid of the screen. So assume 4 bits for the color, and 9 areas, that's 36 bit/moment, and you should be able to do 30 moment/second, for a total of 1080 bit/second. A little less for ECC, about 1 KB/s is not too bad. It's good enough to transmit a good private key, and >> then transfer the data thru wifi. Of course, if you move the camera out to focus on the screen, then you can transmit at a higher speed things like QR codes, but they could also be seen over the shoulder by high resolution cameras. -- __Pascal J. Bourguignon__ http://www.informatimago.com/ ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/max%40maxchan.info This email sent to m...@maxchan.info >>> >>> ___ >>> >>> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) >>> >>> Please do not post admin requests or moderator comments to the list. >>> Contact the moderators at cocoa-dev-admins(at)lists.apple.com >>> >>> Help/Unsubscribe/Update your Subscription: >>>
Re: Is it possible to transfer data by using light
I used to have a multi-factor authenticating door lock using this QR code mechanism. The lock is powered by Raspberry Pi, and have a 128px by 64px monochromatic screen, a camera and an RFID reader attached on it. Procedure to unlock the door: 1. You swipe a RFID card across the lock. A QR code challenge including the hash of the ID of the card and a cryptographic nonce concatenated is displayed on the screen. 2. You start an app on your phone, scan the code and type the PIN. A QR code of hash of the aforementioned challenge hash, some secret stored in the phone, and the PIN concatenated is displayed on the phone screen. 3. You scan the response QR code on the lock. If the RFID card ID/phone secret/PIN tuple matched a record in the database stored within the lock, the lock unlocks. Sent from my iPhone > On Sep 17, 2015, at 13:06, Jens Alfkewrote: > > >> On Sep 16, 2015, at 9:06 PM, Jonathan Hull wrote: >> >> The big question would be why you want to do it. It is most likely easier >> to transfer via wifi (also traveling at the speed of light, and optimized >> for data transfer) or bluetooth. > > Secure pairing, as you said, is one use. You need to ensure that the two > devices involved are exactly the ones you think they are, and WiFi or > Bluetooth don’t work because they see everything in range. > > But it’s much higher bandwidth to use something like a QR code, where you can > send several thousand bits simultaneously. It’s pretty easy to send and > receive QR codes using APIs already available in iOS and Mac OS. You can send > an entire cryptographic key, and use that to bootstrap secure communication > over traditional networking. > > —Jens > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/max%40maxchan.info > > This email sent to m...@maxchan.info smime.p7s Description: S/MIME cryptographic signature ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
The "over-the-shoulder" issue can be avoided using what is effectively a Diffie-Hellman on top of QR codes. This can be done using front-facing cameras on two devices placed face-to-face. Sent from my iPhone > On Sep 18, 2015, at 00:46, Pascal J. Bourguignon> wrote: > > > >> On 17/09/15 17:32, Michael David Crawford wrote: >> And what the man said: I myself experience seizures in which I lose >> consciousness for as long as three weeks. Before they were diagnosed >> I would experience seizures while driving my car then suddenly find >> myself in unfamiliar places without any clue how I got there. >> >> I don't know for sure but strongly suspect that modern computer user >> interfaces caused my seizure disorder as well as that of my cousin. >> Seizures are not otherwise found among any of our blood relatives. > > But then if you don't use the whole screen, but only the area that > should be in front of the camera of the superposed phone, then users > shouldn't be subjected to much stroboscopic light. > > Having the objective so close from the light source does not allow > the camera to distinguish pixels; for example, a black to white > transition takes about 1/10 of the height of the camera view. > But this means that you might still able to transmit about ten pixels at once, > and you can multiply that by a number of color that you can detect reliably > being that out of focus. Basically, I would expect 8 colors to be clearly > distinguishable. Actually, probably more colors should be distinguishable, > if you can filter out the interferences due to the grid of the camera vs. > the grid of the screen. So assume 4 bits for the color, and 9 areas, > that's 36 bit/moment, and you should be able to do 30 moment/second, > for a total of 1080 bit/second. A little less for ECC, about 1 KB/s > is not too bad. It's good enough to transmit a good private key, and then > transfer the data thru wifi. > > > Of course, if you move the camera out to focus on the screen, then > you can transmit at a higher speed things like QR codes, but they > could also be seen over the shoulder by high resolution cameras. > > -- > __Pascal J. Bourguignon__ > http://www.informatimago.com/ > > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/max%40maxchan.info > > This email sent to m...@maxchan.info smime.p7s Description: S/MIME cryptographic signature ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
Do iOS devices support Trusted Computing in hardware? If so is it accessible to userspace apps? If so, you could store your phones secret in a write-only register. For the profoundly paranoid, even the duplication of your storage would not yield your phone's secret, The Bad Guy would need your personal phone. Modern Macs - to the best of my knowledge - provide trusted computing chips, on can access them from userspace with a modest bit of code. Michael David Crawford P.E., Consulting Process Architect mdcrawf...@gmail.com http://mike.soggywizard.com/ One Must Not Trifle With Wizards For It Makes Us Soggy And Hard To Light. On Fri, Sep 18, 2015 at 3:12 AM, Maxthon Chanwrote: > The "over-the-shoulder" issue can be avoided using what is effectively a > Diffie-Hellman on top of QR codes. This can be done using front-facing > cameras on two devices placed face-to-face. > > Sent from my iPhone > >> On Sep 18, 2015, at 00:46, Pascal J. Bourguignon >> wrote: >> >> >> >>> On 17/09/15 17:32, Michael David Crawford wrote: >>> And what the man said: I myself experience seizures in which I lose >>> consciousness for as long as three weeks. Before they were diagnosed >>> I would experience seizures while driving my car then suddenly find >>> myself in unfamiliar places without any clue how I got there. >>> >>> I don't know for sure but strongly suspect that modern computer user >>> interfaces caused my seizure disorder as well as that of my cousin. >>> Seizures are not otherwise found among any of our blood relatives. >> >> But then if you don't use the whole screen, but only the area that >> should be in front of the camera of the superposed phone, then users >> shouldn't be subjected to much stroboscopic light. >> >> Having the objective so close from the light source does not allow >> the camera to distinguish pixels; for example, a black to white >> transition takes about 1/10 of the height of the camera view. >> But this means that you might still able to transmit about ten pixels at >> once, >> and you can multiply that by a number of color that you can detect reliably >> being that out of focus. Basically, I would expect 8 colors to be clearly >> distinguishable. Actually, probably more colors should be distinguishable, >> if you can filter out the interferences due to the grid of the camera vs. >> the grid of the screen. So assume 4 bits for the color, and 9 areas, >> that's 36 bit/moment, and you should be able to do 30 moment/second, >> for a total of 1080 bit/second. A little less for ECC, about 1 KB/s >> is not too bad. It's good enough to transmit a good private key, and then >> transfer the data thru wifi. >> >> >> Of course, if you move the camera out to focus on the screen, then >> you can transmit at a higher speed things like QR codes, but they >> could also be seen over the shoulder by high resolution cameras. >> >> -- >> __Pascal J. Bourguignon__ >> http://www.informatimago.com/ >> >> ___ >> >> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) >> >> Please do not post admin requests or moderator comments to the list. >> Contact the moderators at cocoa-dev-admins(at)lists.apple.com >> >> Help/Unsubscribe/Update your Subscription: >> https://lists.apple.com/mailman/options/cocoa-dev/max%40maxchan.info >> >> This email sent to m...@maxchan.info > > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/mdcrawford%40gmail.com > > This email sent to mdcrawf...@gmail.com ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
On 17/09/15 07:06, Jens Alfke wrote: On Sep 16, 2015, at 9:06 PM, Jonathan Hullwrote: The big question would be why you want to do it. It is most likely easier to transfer via wifi (also traveling at the speed of light, and optimized for data transfer) or bluetooth. Secure pairing, as you said, is one use. You need to ensure that the two devices involved are exactly the ones you think they are, and WiFi or Bluetooth don’t work because they see everything in range. But it’s much higher bandwidth to use something like a QR code, where you can send several thousand bits simultaneously. It’s pretty easy to send and receive QR codes using APIs already available in iOS and Mac OS. You can send an entire cryptographic key, and use that to bootstrap secure communication over traditional networking. To read QR codes you need a camera. In the case of Toymail, they just need one photovoltaic cell to input a serial signal. Any I/O peripheral can be used to communicate between devices. eg. you could also use speaker/microphone to emit a sound, possibly even an ultrasound; but sound would have the same problem as bluetooth, being omnidirectional. On the other hand, QRcodes, or full screen flashes, are visible at least as far as sound or bluetooth can be detected, and are also not very directional. There's also NFC, but IIRC, there's no public API to use it on iOS. If the two phones are superposed, then only the small rectangle of the screen that's in front of the camera needs to transmit the message (the rest of the screen could transmit random data to confuse neighbors). -- __Pascal J. Bourguignon__ http://www.informatimago.com/ ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
> This toy can connect to the iphone's network by detecting the blinking > screen of an iPhone. I wonder if it is possible that using this technique > to transfer data. Absolutely. Such techniques have been used for 150 years, using lamps or reflected sunlight to send Morse-like codes to human observers. Consumer computer applications date back at least 20 years, such as the Timex Datalink watch. As a practical matter, this is the same task as interpreting a 1D barcode, such as a UPC label. ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
Strictly speaking, light is the most common way that data is transferred, in that the forces between electrically charged particles are moderated by virtual photons. Other than light we have the gravitational, strong nuclear and weak nuclear forces however it is impractical to transmit much data by modulating gravity. Look up the protocol standards for IrDA - Infrared Developer's Association. I don't think IrDA is in common use but at one time was supported by Apple PowerBooks. It enabled relatively private data transfer between two boxen by transmitting and receiving infrared light. The source and sensor need not be pointed at each other as one can bounce the beam off the walls or ceiling. By contrast 802.11x wireless internet penetrates walls, unless encrypted, James Bond could sit outside your house in a white van and read your repository pushes. A crude but simple way to transmit data from iOS devices would be to write an app that displayed a plain black screen for zeroes and a plain white screen for ones. Blink the white screen on and off for each ASCII 1 bit, black for 0 bits. You will need error correction, but blinking ASCII will get you started. And what the man said: I myself experience seizures in which I lose consciousness for as long as three weeks. Before they were diagnosed I would experience seizures while driving my car then suddenly find myself in unfamiliar places without any clue how I got there. I don't know for sure but strongly suspect that modern computer user interfaces caused my seizure disorder as well as that of my cousin. Seizures are not otherwise found among any of our blood relatives. Have A Nice Day. Mike Michael David Crawford P.E., Consulting Process Architect mdcrawf...@gmail.com http://mike.soggywizard.com/ One Must Not Trifle With Wizards For It Makes Us Soggy And Hard To Light. On Thu, Sep 17, 2015 at 6:06 AM, Alex Zavatonewrote: > Yes. How do you think TV remotes work? > > They use IR transmitters/receivers. > > They are, however, PAINFULLY SLOW. > > When we were making FiOS TV, we had to create an app called FiOS Mobile > Remote for the iPhone that would control your FiOS set top box. > > EVEN THOUGH the iPhone had to pipe its commands through a much much much > longer chain to get to the STB, it was a night and day in terms of > performance. In fact, it was almost instant. > > Back then when we were prototyping FiOS I took an IR receiver and hooked it > up to a PC. Then, using Director, we detected the signal that was being > broadcast and mapped each signal to the appropriate keypress. > > Then, we wrote a layer on top of that which created key events (press, > release, hold and repeat), and that allowed us to have a library which would > we could then use to issue commands based on the action being performed on > the remote. > > All being done by sending a signal over light. > > > At another company, we turned data into QR codes and the QR codes became data > packets which we used to reimplement TCP/IP over a video capture transmission > method. Our implementation was to have an iPhone in video capture mode and > flash a bunch of QR codes on another computer's screen. > > We then pulled each frame out of the video as it was captured, detected when > the image representing the QR code changes and rebuilt the data on the device > and decoded it. > > As I recall, we were testing driver's license detection software and used a > kitten as the photo in the license. > > > So, yes, you can use light to transmit data. > > > > > On Sep 16, 2015, at 11:14 PM, ico wrote: > >> First of all, please take a look at this video: >> https://www.youtube.com/watch?v=LPyLHhiGTHM >> >> This toy can connect to the iphone's network by detecting the blinking >> screen of an iPhone. I wonder if it is possible that using this technique >> to transfer data. >> For instance, >> 1. you have some data, and transform it into a frequency of flash light >> 2. you control iPhone A to blink its screen or its flashlight according to >> this frequency >> 3. you control iPhone B to detect this frequency of light >> 4. you transform this message into some data which is the same as you have >> in the 1st step >> >> Anyone can give a hint about achieving this? >> Sorry for my bad English. >> >> Thank you! >> ___ >> >> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) >> >> Please do not post admin requests or moderator comments to the list. >> Contact the moderators at cocoa-dev-admins(at)lists.apple.com >> >> Help/Unsubscribe/Update your Subscription: >> https://lists.apple.com/mailman/options/cocoa-dev/zav%40mac.com >> >> This email sent to z...@mac.com > > > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > >
Re: Is it possible to transfer data by using light
Yes. How do you think TV remotes work? They use IR transmitters/receivers. They are, however, PAINFULLY SLOW. When we were making FiOS TV, we had to create an app called FiOS Mobile Remote for the iPhone that would control your FiOS set top box. EVEN THOUGH the iPhone had to pipe its commands through a much much much longer chain to get to the STB, it was a night and day in terms of performance. In fact, it was almost instant. Back then when we were prototyping FiOS I took an IR receiver and hooked it up to a PC. Then, using Director, we detected the signal that was being broadcast and mapped each signal to the appropriate keypress. Then, we wrote a layer on top of that which created key events (press, release, hold and repeat), and that allowed us to have a library which would we could then use to issue commands based on the action being performed on the remote. All being done by sending a signal over light. At another company, we turned data into QR codes and the QR codes became data packets which we used to reimplement TCP/IP over a video capture transmission method. Our implementation was to have an iPhone in video capture mode and flash a bunch of QR codes on another computer's screen. We then pulled each frame out of the video as it was captured, detected when the image representing the QR code changes and rebuilt the data on the device and decoded it. As I recall, we were testing driver's license detection software and used a kitten as the photo in the license. So, yes, you can use light to transmit data. On Sep 16, 2015, at 11:14 PM, ico wrote: > First of all, please take a look at this video: > https://www.youtube.com/watch?v=LPyLHhiGTHM > > This toy can connect to the iphone's network by detecting the blinking > screen of an iPhone. I wonder if it is possible that using this technique > to transfer data. > For instance, > 1. you have some data, and transform it into a frequency of flash light > 2. you control iPhone A to blink its screen or its flashlight according to > this frequency > 3. you control iPhone B to detect this frequency of light > 4. you transform this message into some data which is the same as you have > in the 1st step > > Anyone can give a hint about achieving this? > Sorry for my bad English. > > Thank you! > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/zav%40mac.com > > This email sent to z...@mac.com ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
Flashing the entire screen as I describe should not be done in product (App Store) code, rather one might use it as a very, very rough prototype. I expect production-quality software could modulate the screen is far-more subtle ways that both would transmit data far faster as well as avoid stimulating seizures. For the most part it is sharp, sudden flashes as from the Xeon strobes in emergency responder vehicle lights (ie. Squad Car Lights) that, without a doubt, trigger my own seizures. While I also suspect computer animations, I am as yet uncertain. Analog transmission by displaying shades of grey could transmit more data while avoiding the stimulation of seizures. Michael David Crawford P.E., Consulting Process Architect mdcrawf...@gmail.com http://mike.soggywizard.com/ One Must Not Trifle With Wizards For It Makes Us Soggy And Hard To Light. On Thu, Sep 17, 2015 at 9:46 AM, Pascal J. Bourguignonwrote: > > > On 17/09/15 17:32, Michael David Crawford wrote: >> >> And what the man said: I myself experience seizures in which I lose >> consciousness for as long as three weeks. Before they were diagnosed >> I would experience seizures while driving my car then suddenly find >> myself in unfamiliar places without any clue how I got there. >> >> I don't know for sure but strongly suspect that modern computer user >> interfaces caused my seizure disorder as well as that of my cousin. >> Seizures are not otherwise found among any of our blood relatives. > > > But then if you don't use the whole screen, but only the area that > should be in front of the camera of the superposed phone, then users > shouldn't be subjected to much stroboscopic light. > > Having the objective so close from the light source does not allow > the camera to distinguish pixels; for example, a black to white > transition takes about 1/10 of the height of the camera view. > But this means that you might still able to transmit about ten pixels at > once, > and you can multiply that by a number of color that you can detect reliably > being that out of focus. Basically, I would expect 8 colors to be clearly > distinguishable. Actually, probably more colors should be distinguishable, > if you can filter out the interferences due to the grid of the camera vs. > the grid of the screen. So assume 4 bits for the color, and 9 areas, > that's 36 bit/moment, and you should be able to do 30 moment/second, > for a total of 1080 bit/second. A little less for ECC, about 1 KB/s > is not too bad. It's good enough to transmit a good private key, and then > transfer the data thru wifi. > > > Of course, if you move the camera out to focus on the screen, then > you can transmit at a higher speed things like QR codes, but they > could also be seen over the shoulder by high resolution cameras. > > -- > __Pascal J. Bourguignon__ > http://www.informatimago.com/ > > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/mdcrawford%40gmail.com > > This email sent to mdcrawf...@gmail.com ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
On 17/09/15 17:32, Michael David Crawford wrote: And what the man said: I myself experience seizures in which I lose consciousness for as long as three weeks. Before they were diagnosed I would experience seizures while driving my car then suddenly find myself in unfamiliar places without any clue how I got there. I don't know for sure but strongly suspect that modern computer user interfaces caused my seizure disorder as well as that of my cousin. Seizures are not otherwise found among any of our blood relatives. But then if you don't use the whole screen, but only the area that should be in front of the camera of the superposed phone, then users shouldn't be subjected to much stroboscopic light. Having the objective so close from the light source does not allow the camera to distinguish pixels; for example, a black to white transition takes about 1/10 of the height of the camera view. But this means that you might still able to transmit about ten pixels at once, and you can multiply that by a number of color that you can detect reliably being that out of focus. Basically, I would expect 8 colors to be clearly distinguishable. Actually, probably more colors should be distinguishable, if you can filter out the interferences due to the grid of the camera vs. the grid of the screen. So assume 4 bits for the color, and 9 areas, that's 36 bit/moment, and you should be able to do 30 moment/second, for a total of 1080 bit/second. A little less for ECC, about 1 KB/s is not too bad. It's good enough to transmit a good private key, and then transfer the data thru wifi. Of course, if you move the camera out to focus on the screen, then you can transmit at a higher speed things like QR codes, but they could also be seen over the shoulder by high resolution cameras. -- __Pascal J. Bourguignon__ http://www.informatimago.com/ ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
This is how fibre optics work, so it is possible. In this case, you have to be careful not to give people seizures by blinking at the wrong frequency. The big question would be why you want to do it. It is most likely easier to transfer via wifi (also traveling at the speed of light, and optimized for data transfer) or bluetooth. The Apple watch pairing process does seem to use the camera and a moving pattern (not frequency of flash, but a pattern of dots on the screen) Thanks, Jon > On Sep 16, 2015, at 8:14 PM, icowrote: > > First of all, please take a look at this video: > https://www.youtube.com/watch?v=LPyLHhiGTHM > > This toy can connect to the iphone's network by detecting the blinking > screen of an iPhone. I wonder if it is possible that using this technique > to transfer data. > For instance, > 1. you have some data, and transform it into a frequency of flash light > 2. you control iPhone A to blink its screen or its flashlight according to > this frequency > 3. you control iPhone B to detect this frequency of light > 4. you transform this message into some data which is the same as you have > in the 1st step > > Anyone can give a hint about achieving this? > Sorry for my bad English. > > Thank you! > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/jhull%40gbis.com > > This email sent to jh...@gbis.com ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Is it possible to transfer data by using light
First of all, please take a look at this video: https://www.youtube.com/watch?v=LPyLHhiGTHM This toy can connect to the iphone's network by detecting the blinking screen of an iPhone. I wonder if it is possible that using this technique to transfer data. For instance, 1. you have some data, and transform it into a frequency of flash light 2. you control iPhone A to blink its screen or its flashlight according to this frequency 3. you control iPhone B to detect this frequency of light 4. you transform this message into some data which is the same as you have in the 1st step Anyone can give a hint about achieving this? Sorry for my bad English. Thank you! ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Is it possible to transfer data by using light
> On Sep 16, 2015, at 9:06 PM, Jonathan Hullwrote: > > The big question would be why you want to do it. It is most likely easier to > transfer via wifi (also traveling at the speed of light, and optimized for > data transfer) or bluetooth. Secure pairing, as you said, is one use. You need to ensure that the two devices involved are exactly the ones you think they are, and WiFi or Bluetooth don’t work because they see everything in range. But it’s much higher bandwidth to use something like a QR code, where you can send several thousand bits simultaneously. It’s pretty easy to send and receive QR codes using APIs already available in iOS and Mac OS. You can send an entire cryptographic key, and use that to bootstrap secure communication over traditional networking. —Jens ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com