1 00:00:00,180 --> 00:00:05,700 ‫So how about we actually go ahead and click, run and run our application, our beautiful application, 2 00:00:05,700 --> 00:00:07,450 ‫so that says, oh, I'm great. 3 00:00:07,540 --> 00:00:11,940 ‫The database that APC's cryptid initialization completed, I'm ready for Kawase. 4 00:00:12,120 --> 00:00:14,730 ‫What are we going to serve, guys? 5 00:00:15,060 --> 00:00:19,650 ‫Since I went to France multiple times and I love that country, I'm going to say France. 6 00:00:19,980 --> 00:00:22,170 ‫What is the capital of France? 7 00:00:22,320 --> 00:00:22,950 ‫Hmm. 8 00:00:23,100 --> 00:00:29,640 ‫I wonder let's wait for a few minutes to find out because there is no way for me to find out the capital 9 00:00:29,640 --> 00:00:32,940 ‫of France except from this beautiful application. 10 00:00:32,940 --> 00:00:34,440 ‫I can't even look at this ESV. 11 00:00:37,150 --> 00:00:37,780 ‫That's where it goes. 12 00:00:39,680 --> 00:00:44,120 ‫All right, guys, to close to two minutes to give me the answer Perri. 13 00:00:45,170 --> 00:00:47,200 ‫All right, look at this. 14 00:00:47,540 --> 00:00:51,950 ‫So it is obviously slow searching through what? 15 00:00:53,100 --> 00:01:04,140 ‫Forty eight rows that sit took three minutes or two minutes, close to two minutes is just not acceptable, 16 00:01:04,140 --> 00:01:04,500 ‫right? 17 00:01:05,310 --> 00:01:09,450 ‫It's not production ready at all, maybe for certain use cases. 18 00:01:09,450 --> 00:01:11,670 ‫But you don't know. 19 00:01:12,020 --> 00:01:13,050 ‫This is my machine. 20 00:01:13,080 --> 00:01:15,780 ‫This is running on a local container on my MacBook. 21 00:01:15,900 --> 00:01:17,120 ‫That's from 2015. 22 00:01:17,730 --> 00:01:20,850 ‫Can we can can we multithreaded this? 23 00:01:21,000 --> 00:01:21,800 ‫Definitely. 24 00:01:21,810 --> 00:01:23,850 ‫Yes, definitely. 25 00:01:23,970 --> 00:01:28,240 ‫It's possible, but I believe it's possible to multithreaded that every row. 26 00:01:28,620 --> 00:01:30,960 ‫It depends on how is how the encryption is done. 27 00:01:30,960 --> 00:01:31,230 ‫Right. 28 00:01:31,320 --> 00:01:38,610 ‫If the whole thing is just if it's a it's a block cipher and the whole thing is encrypt as one block, 29 00:01:38,610 --> 00:01:40,560 ‫then probably I don't know. 30 00:01:40,570 --> 00:01:41,640 ‫I don't think it's possible. 31 00:01:41,790 --> 00:01:44,370 ‫But every row is it's encrypted. 32 00:01:44,370 --> 00:01:48,510 ‫It's by itself using a specific encryption algorithm. 33 00:01:48,510 --> 00:01:58,530 ‫Then we can treat every row as its own thing and then we can perform the operation in parallel, right 34 00:01:58,530 --> 00:02:00,500 ‫on all of them in parallel. 35 00:02:00,750 --> 00:02:04,830 ‫So the more CPU, the more threads you have, the more memory you have. 36 00:02:04,830 --> 00:02:08,130 ‫You can obviously do this much, much faster. 37 00:02:08,250 --> 00:02:15,930 ‫And if I have a database that supports great indexing and you can do it today, I think using this, 38 00:02:16,170 --> 00:02:21,270 ‫there's nothing stopping you from writing an index on the encrypted data. 39 00:02:21,780 --> 00:02:27,510 ‫I've no idea how was going to is going to perform or how is going to work, but I think it's possible. 40 00:02:27,840 --> 00:02:30,960 ‫And then you're going to use that index, the HAOMA Morphic Index. 41 00:02:30,960 --> 00:02:38,580 ‫I just made up this word morphic index to actually search the encrypted database. 42 00:02:38,580 --> 00:02:40,110 ‫So, yeah, it's possible. 43 00:02:40,230 --> 00:02:40,890 ‫It's possible. 44 00:02:41,550 --> 00:02:45,270 ‫I think it's possible because the encrypted data will not change, is going to stay static. 45 00:02:45,570 --> 00:02:45,960 ‫Right. 46 00:02:46,530 --> 00:02:48,240 ‫It's not it's not like this is Diffie Helmar. 47 00:02:48,840 --> 00:02:49,740 ‫It's not ephemeral. 48 00:02:49,740 --> 00:02:53,930 ‫The encrypted is always using the static warbird. 49 00:02:53,970 --> 00:02:54,690 ‫Static is wrong. 50 00:02:55,290 --> 00:03:02,910 ‫We're going to use the same encryption key which will always lead to the same cipher all the time unless 51 00:03:02,910 --> 00:03:08,430 ‫we are using some some sort of a counter mode that will change the results. 52 00:03:08,640 --> 00:03:09,300 ‫I don't know, man. 53 00:03:09,630 --> 00:03:10,850 ‫So, yeah, that's a guy's.