 Well, guys, thanks a lot of those who turned out. We'll sort of jump in variety into things. So I'm Toby Norman. I'm actually up here with my brother. We're going to be talking about Simprints, which is a biometric project that works in developing countries, trying to solve a challenge, a hacking for good challenge that we came across about two years ago. And so what we're hoping to do is talk to sort of do three things. We'll talk about the biometrics for the developing world, which is both interesting, sometimes controversial, but really cool. To talk about what it is like to tap into hacker communities and get help from hackers, building something that actually a lot of the digital musicians hadn't been working on, and hopefully share some sort of tips and lessons that we learned along the path of doing that. And then the third thing is talk about a couple of challenges that we're facing at the next stage of the project and maybe get some of your input and some of your thoughts about how to solve those challenges. So let's dive right into what was the problem that got us started on this YouTube slide. So very quickly, this is, Simprints started as a student project at the University of Cambridge about two years ago, but really picked up steam, about in the past nine months or so. And the mission of the project was really about building technology for development, so hacking for good. How could we use some of the engineering, how could we use some of the hacking interest around it? Can we reach for actually solving real world problems and not just problems in the UK but global problems? Next slide. So what's the problem? So I actually don't come from a hacking or an engineering background. I've been working in global health for about the past seven years in different capacities. First in Africa, then in Central and South America, and most recently in Asia and Bangladesh, where I've been doing my doctoral research for the past three years. The problem that we run consistently in the field, particularly in global health care, is the question around identification. So as you guys know, mobile has penetrated the world in an incredible way. There's more mobile phones now on the planet, and there are people. It's just getting more and more amount of data is increasing. Huge amounts of people have access to mobile phones, which is a mission that's really cool way of mobile technologies. Everything around mobile health care, mobile finances, the government services, lots of cool stuff in mobile space. And one of the challenges we have, particularly the very resourceful setting, so places like where I work in Bangladesh, places where people often have weak government institutions, is actually linking people to these digital records, these mobile records. So you might have an awesome mobile health care application, but if you don't have a unique ID to connect them to those records, the mobile tool is useless. It doesn't work. And this is very common in places where people often get quite remote. Populations can be really poor. You literally can be low. No one has things like passports, government machines like the driver's license and stuff we have. Or any type of NHS number, natural insurance number, things like that. So if we were typically using the way to resolve this problem. And so what we have is really cool mobile tools that are coming up. So NHS tools and diagnostic tools, new tools for TV, HIV, malaria, clinical research. There's a bottleneck that's caused by the lack of a unique ID that UID needs to link people digitally to their records and get the most out of these new tools and do the most good for these new tools. And so that was the challenge. That's been a big bottleneck. That's how we got involved in this project and the challenge we want to see if we could solve and do some hacking around Cambridge. So how do you do that? It's like that. So the thought was, alright, these awesome tools exist. What is a great unique ID that people have that's consistent and that it's not something they can use that's with them all the time? And the other thing is biometrics. We all have biometrics IDs. There's different types. There's iOS, there's voice, there's facial recognition. And the one we're looking at on this project is finger print. So the challenge at the moment, if you're working with paper records or paper unique IDs, you're going to run into a whole bunch of problems in the field. And many of these problems aren't going to work for the last 40 years. So for example, paper IDs like vaccination cards often get lost or damaged in the field. So you give a mom a vaccination card for her baby. But you come back in a year, you come back in two years, five years of vaccination, child. And the chance of that mother having that card and not having lost it or getting damaged and having discretion inside the gardens is pretty high. So this is one of the challenges with paper IDs. The biometrics IDs do get paper prints awesome. You're going to have the finger prints your entire life. They're available since they were born. It's something you'll have your whole life. Second, often non-unique. So big problems, particularly in medical records, is you get duplicates. The IDs come non-unique. You enter different, you see a person twice. Each time you enter a new record, thinking they're coming to the system the first time, and you get tons of duplicates which clog down your system and screw everything up. Whereas fingerprint IDs are unique, you can match with a single fingerprint up to 10,000 individuals from that. Multiple finger prints, the scope just gets bigger and bigger. And part of the big problem where I work is that records can be fake. So sometimes records can be fake. So sometimes, particularly when you have subsea programs, we have programs where there's money involved or some type of government service involved, you can use it to actually fake the records. There's a lot of corruption in places where we were in Bangladesh or in India where you don't want that and you want to find new tools to fight against that corruption and fight against people taking IDs or claiming that they're giving services, but they haven't actually given it in the field. Fingerprint IDs are really tough to fake unless you have career-sophisticated tools to do that. That's that. Good example of this. So an area I work in, maternal health care, right? So if you're a momentary development country and you live in, say, a remote village somewhere in Bangladesh, in northern Bangladesh, what you're supposed to do is if you get pregnant, put into the World Health Organization, hopefully you're going to get seen by health workers about four times before you get birth. And it's during this visit that health workers catch a lot of the stuff that makes pregnancy really dangerous, from the signs of preecrancy or the things that can kill you when you get birth. What actually suddenly happened in the field is that happens quite rarely. You get all of the health worker visits you're supposed to get. You're supposed to get four visits, only about 40% of all pregnant months in the world, especially the real four ones, get those visits. And the challenges are one, misidentification, so finding months you don't have any records, and two, verification. So actually knowing that the community health workers have seen the right months and you've got tools to verify that that visits actually happened. And so what we said is what if we came together and used a biometric project to build something that was easy, simple, and as open-source as possible, but could plug into the existing health tools, allowing them to overcome these challenges of misidentification and verification. And so the first thing we said is, all right, this sounds like a good idea. Surely someone's done it, right? Then it must be the biometric tool that exists out there somewhere to realize you do it. So you should be able to buy a scan on the shelf, create some software, plug it in, problem solve. And so we spent a lot of time looking for scanners that would fit the bill. And what it's going to be is it's going to be something that's ruggedized because we're pretty tough, right? You're going to take this monsoon to Bangladesh or in the sand storms in the Kalahar desert or all over the world, and create tough circumstances. It's going to be something that's low cost, right? You cannot afford a $500 at the other compliant scanner when you're trying to do this with really resourceful settings. So a community health worker that's just where you don't have a lot of money. And ideally, it's going to be something that's open-source and can plug into lots of different phones. Because although everyone has phones, there are lots of different types of phones, lots of different types of platforms. It's not going to do any good if you just design it in a blackberry or one type of system. You want it really easy for developers to plug into different mobiles of their platforms. And when we actually looked for these weird things, we found that the scanners that existed on the market were actually really bad at this. They're either inaccurate, so it's just a little securities camera that you have on iPhone. They're either like an iPhone, so they're super expensive. You know, they pay $500 or $500 a piece. Often in mobile, so the things that you have to plug in with a USB to a laptop, which isn't going to happen in a place like Vancouver. We're not everyone's going to have a laptop. Bad design in form factor, non-rugged eyes. Optimist software algorithms charge per stand, so it's going to get super expensive before health organizations to actually get the stands matched to your fingerprints. And difficult to integrate in systems. A lot of the stuff in the space is closed. A lot of the stuff is proprietary. And that's going to make it top of debt to integrators at work they do. And so the question was, all right, clearly we've got to build two things. We've got to build one of three different scanner that connects wireless into mobile phones. It's got to be low cost, so we're in between $30 and $50. It's got to integrate eZwings and other projects. It's got to be wireless, ruggedized, waterproof, and one that's becoming increasingly important. It's got to have a long battery life. Most people in the developing world do charge their phones, but they don't get to charge it actually every day or every night. It's not as easy on how to make power out of it, so it's got to have a long battery life for the last at least as long as the phones people are working within the field. And it wasn't just the hardware you have to figure out. You've got to figure out the software as well. An open source matching algorithm, an open source API, it's got to be interoperable with other scanners and plug in easily to the existing tools. No point in just building an app when there are tons of good apps but it already exists out there. It's like... So Chius, why don't you tell us a little more about what we actually built? Yeah, great. So this is jumping into what we've actually built, how the system works. This is a little bit more of my background. I'm a software developer. So we focused, as Toby said, on two areas. We have to build a scanner and then we have to build some software that accompanies that scanner. So what we've done is we have taken some existing fingerprint modules already, something that's capable of actually taking the image of a fingerprint and breaking this down to a template and then putting this into essentially a very rugged unit that has a battery and Bluetooth. So these things can be synced to very simple phones any really cheap, affordable Android phone and then the Android phone can really be your platform. So we focused on rugged and low cost and then inside the scanner itself what we do is we're able to swipe the finger, break this down into a template and then we pass this template over to the Android phone and on this step is where we can do the identification. So a person's fingerprint is unique but what we do is every time you look at an image as you can imagine every image is going to be slightly different. So we find this template and this template will have these unique points that you then compare to the pre-existing templates and that's essentially how you do a very simple fingerprint match. And we can able to do this on the phone itself. So you can have a list of templates sitting on the phone. You can have a list of unique IDs that are generated that match with these patients and then on the phone you can find which is the right patient and pull up this unique ID. Using this unique ID we're able to then connect it to patient records. So whatever application that you're plugging this into if they have an existing EMS system or medical record system of some kind they're going to have a unique ID that's tied in with each of their patients. So when you connect this global unique identifier to that patient you're able to essentially use the template to find the global unique identifier which can then confine the patient's records. So here's a little peek inside of the scanner itself. It's actually a very simple process but this is one of the things that we want to focus on making it very streamlined, make it very cheap, make it very affordable. So we have a fingerprint sensor that connects to a microcontroller which we're currently doing on embed and working with an arm. And then on here we run the extraction. So we take the image of the finger and then we break it down into the minutiae, the unique points which gives us the fingerprint template. And then the microcontroller passes this to the Bluetooth module and then this Bluetooth module can just pass it to the Android phone. We're building the API right now to allow people to either build these steps into their own application on Android so they can just connect to the scanner, request the template to get from the scanner and then bring it in. Or just building an app that people will be able to essentially take it, pull it apart and then do that process themselves. And then we'll have an open source API. So there's two ways to do identification currently with the fingerprint. As you can imagine, when you have 10,000 fingerprints out of one out of that, that's a very resource-intensive process to do. So on these really cheap Android phones it's very, very slow. The fastest thing to do is actually make a cloud-based matching system so that it can then send the template up to the cloud, use all the resources in the cloud, use extra cores in the cloud, do the matching, find the correct UID, send that UID back to the phone and then keep going on the process. So that's the second step that we do. So you can match natively on the phone a little pool of fingerprints on there, but if you have too many and it's too slow or the device doesn't have enough cores, doesn't have enough power in it, then you can send it up to the cloud and it takes less resources, it's faster. And then this is essentially where it goes and plugs into the existing M-Health apps. So when this unique ID is returned it's passed over to the M-Health app that's either on the phone or it could be another cloud-based system and they can use that to then go and whenever you talk about biometrics you have to cover security. And so one of the things that we want to make sure is that people weren't nervous of okay, you're taking biometric information, you're passing it to the cloud, you're passing it to essentially Android phones that people can get a hold of, how do you keep this secure? Now there's a couple steps in the security that make it pretty simple, pretty straightforward and pretty secure as biometrics go. So the first one is that the fingerprint image never leaves the scanner itself. So inside the scanner we take the image we turn it into a template and then the image is destroyed and the template is the only thing that's sent over. And this is important because these extracted templates can't be reverse engineered into a fingerprint, so they can be used for matching they can be used for pulling up a global unique identifier but they can't be turned back into someone's fingerprint. So if you were to intercept that Bluetooth connection then you wouldn't be able to essentially build someone's fingerprint from just this tiny piece of information that you've been passing over. The other nice thing about Bluetooth is that you could probably throw a stone further than you could connect to Bluetooth and at least reliably. So a lot of the rural places that will be working and it will be a bit suspicious if you have a community health worker in a field you have a Bluetooth scanner and then there's a guy 30 meters away from him with a laptop people will probably notice that. So there's another security step right there. And then I think the most important security step is that the cloud-based matching all that's being held inside of the cloud-based matching is a unique ID and a template. So if you were to intercept that, if you were to go in and find the template that was associated with this unique ID the unique ID isn't a key or isn't access to the third party's medical record system. So you would have to come in, you'd have to find that unique ID and then you'd have to go and then re-break into the existing medical record system, use that unique ID to find that patient's records and it would be a bit of a waste of time. Your time would be to spend just breaking into ODK's system and finding that or breaking into a BRAC system and getting their medical records that way. So those two are linked essentially through that one step that unique ID doesn't give access so everyone can secure their system with their patient records their own way. So, yep, essentially that is the sort of basics of the security that we have behind that. So currently you're using some tools that I'm sure a lot of you are very familiar with so our first one was really using an Arduino board and it was just sitting on top of a breadboard and what we did is we took a UPEC fingerprint scanner and we plugged into the breadboard and we plugged into an Arduino board and then we've had some very kind engineers from ARM helping us do the embedded code and then just essentially handing that Bluetooth connection over to the Android and then building an app that can essentially communicate with the scanner. Now we're building our own PCBs and as you can actually see in the bottom of the screen this is one of the first iterations of our PCB so you can recognize in the top right there's a little Bluetooth module and then the microcontroller is sitting right in the middle there and then the piece connected to it is the UPEC scanner. So that's essentially what we're looking at right now. We'll be using some raspberry pies in the future to test out a few fingerprint modules, see which ones have more accurate templates, those kinds of things. So this is essentially what we're working with. A quick shout out to MakeSpace. I can see a few MakeSpace members here. Yep, a lot of our work is done in MakeSpace so we bug these guys frequently when we need to sort out a small problem and we're always in there stealing tools trying to hack things together. It's been a very scrapped together process but it's been great. So the other step that we looked at was the casing design. So one of the things that you have to consider when you have a casing design is it has to be easy for people to use. So we went out into the field in Bangladesh to test a swipe scanner. So one that you'd kind of have on your laptop or one that you get on these new Android tablets and you know we were very interested to see people in the office love the square design that we had. It looks very much like an iPhone. They think that looks very official. This is great but when we actually brought it out to the people in the field and said oh could you swipe your finger on this they kind of look at us and go and push it on top of the device and they had a really difficult time trying to essentially get that fingerprint precisely on where you need it. So we're looking at and building essentially ways of doing this in a smoother process. How can we make scanning go a little bit smoother? How can we make this more user friendly? The user experience they have to be able to look at it and say I don't understand how I use this device. There we go. So this is one of the really interesting things that we found when we were field testing in Bangladesh is essentially where is it going to be more useful? Is it going to be more useful if it's connected to a desk if you're talking about a hospital setting or an administration setting? Or a lot of cases the people who this device will be using it aren't actually sitting so the community health worker will be interacting with them but they will be wandering around they will be doing chores, they will be doing field work they will be doing these kinds of things and so how can you have a device that's capable of keeping up with them and this is one of the things we really looked at in the youth, these kinds of things and then another thing is finger flexibility so a lot of people sort of get limited finger flexibility after years and years of field work so you can't have a thick device sitting on a table that then this person has to really bend their thumb up and get the scan on so it needs to be thin, it needs to be mobile, it needs to be easy for the community health worker to use and then also you need to be able to go into sort of no connection scenarios so there's another part of the software the reason that we don't just do the cloud based matching but we do the local matching on the android is because the network connections they're getting really good out there but they go down very frequently so you don't want to be stuck in a scenario where you have to wait for 20 minutes for the network to come back online or to be able to connect to the cellular data again to get up there so you want to be able to keep going from where you are so yeah I'm going to pass it back to Tobi talk about sort of what our results were what we found but big things we found in this project essentially trying to hack one take to the feed the second, if you were trying to convince people to either give you money or give you resources to give you support collect data like crazy you know because we could talk to folks about what we had seen and we could talk to folks about what we believed was going to work and if you're going to try and hack something better people who are going to support that really really want to see data and they want to see good data backing up okay we've tested this we've built something, how does it work and the big thing for us was just training out as fast as possible what are the biometric industry standards and are these prototypes meeting that and so these are some of the rock curves and if folks are interested in biometrics come grab us up and talk and we can take more into that but a big thing was just building the right curves that industry folks would expect to see and figuring out where we placed on that and here we're seeing an equal average of about 3.4% which actually is pretty good for them first prototype that's actually surprisingly good for where we'd be and we found out really early too that when you're trying to do fingerprints what you need is large images and so the best two fingers by a long shot are going to be your thumb and your forefinger all of the images we're getting out of the last three fingers rubbish and that's stuff that we had to find by being in the field but also just being methodical about the way we collect the data and the way we analyze the data and that's been a huge help in driving the project forward and convincing folks to support it because that was a big lesson going through this so yeah another thing to do when you're really looking at building a hack project like this is the community that you need to work with because obviously you can't do every step of this process you can't build the thing that's going to capture the image you can't build the algorithm that turns that image into a template you don't want to end up being the one who has to build the algorithm to match all these templates how do you connect these resources and then there's all the embedded code that you have to write there's all the soldering that you have to do on your PCB the next step is really finding where you're going to be and luckily we're in Cambridge so we have make space as we said earlier which is phenomenal and being members of environments like that how do you do your design who's going to build the initial board how are you going to build a case for that board who's going to help you do these things so that was essentially a really big step that is worth looking into and finding yourself in make space which is a great thing and it's been a huge joy for us as well how to get it off the ground so we are very lucky and we've just been essentially received our seed funding from the Bill and Linda Gates Foundation and from USAID but looking for how do you find resources and one of the big things is all HAC projects can secede but you need to find essentially who are the funders out there who are interested in your space who are interested in your technology but also their beliefs and their visions align with yours so you're looking for people who approve of open source systems people who don't mind that things that are no should be proprietary and you should be getting IP on if you want investment they're impact investors they're really looking for no we are actually interested in investing in people who will have a large impact and we see that this technology is going to be able to reach a lot of fields, a lot of people and have a large impact on that so essentially getting aligned and finding out who out there has money is interested in essentially giving that money to have impact and then essentially start mastering those people which is what we did and it's been reasonably successful up until now so which is good and then finally keeping an open mind to applications that maybe you never thought of this is something when we came into this we came into purely for the mobile hub that's our passion global hub background this is what we want to do and what we're going to do but in doing the process and talking to lots of people about the idea sometimes folks come up with applications that we didn't even think existed the first time around for example one is micro finance so really small loans for people who don't have bank accounts using it to track and verify those loans using biometrics or refugees and IDP services so people who are really migratory and it's hard work to connect them to either their health records or to their organizations like UNICEF or UNHCR for working with refugees connecting these people to services we didn't even think about that when we started the project there were a lot of folks and it came up anti-corruption efforts reducing fraud that happened in the year of the time poverty research academics that actually wanted to link people to research winning people the information aiding farmers ways that you can use this to help connect farm workers or actually farm owners to different government services in terms of stuff that we didn't plan but when you talk to smart people and interact with smart people sometimes you'll be made with what comes out of the blue thank you very much for coming to the presentation and we're very happy to do a little Q&A at the end here so if anyone has any questions any follow-ups anything they want to know