Hi, everyone. Welcome to this Contributed Talk for Eurocrypt 2020. My name is Yfka Dulek, and I will tell you about the protocol for secure multi-party quantum computation with a dishonest majority. So it's a good idea to start with the classical setting. So I will first briefly explain the task of classical multi-party computation before moving on to the quantum setting. With multiple players, indexed by i, each with their own input x sub i. In this example, I drew six players who each have an integer number as their input. Now, the players want to compute some function f jointly on all the inputs. For example, they may want to know what the highest number is that any player has as input. Or more generally, they may want to compute individualized functions f sub i so that each player learns some different piece of information. For example, they may want to know was my input the highest, in which case only the player with input 102 will get the output true and while all other players get false. And the goal in multi-party computation is to compute some such functions while keeping your own input a secret. If there is some trusted third party represented by this figure in the middle here, then this is of course easy. All the players can just tell their input to the trusted party and the trusted party can announce the output. Or in the case of individual outputs communicate with each player individually. So the functionality I describe here with the trusted third party is the ideal setting. But in reality, such a trusted third party is of course not generally available. So an MPC protocol tries to achieve this functionality without the trusted third party. We still have our six players, but now they only communicate with each other. I didn't draw all the arrows here, but everybody can talk to everybody. There are two main properties that we want to achieve. The first one, as I already mentioned, is input privacy. And this privacy should be guaranteed even if multiple corrupted players work together and actively deviate from the protocol to try to learn information about the other players. Importantly, what we can guarantee is that the corrupted player should not learn anything about your input, except what they can already infer from the output. So consider the example of computing the maximum. If you're the player with the input 11 and the other players learn that the maximum input is 102, then they also learn that your input is at most 102. So they necessarily learn some information about your input, but nothing more than what they would have already learned from an interaction with the trusted third party in the ideal setting. And the second property that we want to achieve is some kind of verifiability, namely that the players can be sure that their output is actually correct. For this top, we will consider NPC with a board, meaning that one of two things can happen from the point of view of an honest player. Either the honest player detects that some cheating is going on and he clears an abort, or if he doesn't detect any cheating, the honest player has the guarantee that their output is correct with very high probability. So in other words, the corrupted players cannot force the evaluation of a different function than f sub i without player i noticing. Now there are also a few inherent limitations to this setting. So first of all, we cannot prevent that the honest players lie about their input. That simply falls outside of the model of NPC, and you can also know that in the ideal setting, the players were also given the freedom to choose what they wanted to submit to the trusted third party. Another thing that we cannot prevent, if more than half of the players is corrupted, is something called unfairness. Informally, what this means is that it's possible that the corrupted players learn their outputs and then immediately just abandon the protocol so that the honest players never learn their outputs. And this is something that's impossible to prevent in the case of a dishonest majority, which is the setting that we will consider today. So now that we've reviewed the definition of classical NPC, I'm ready to talk about what we're really here for, which is quantum multi-party computation. The setup is very similar, except that now each player gets a quantum register holding an input and they want to compute some efficient quantum map by on the joint state of the players. Note that I do not make any assumptions on whether or not these inputs are entangled or whether or not they can even be efficiently prepared. During this talk, I'll present to you a protocol for multi-party quantum computation, or MPQC, that has as a subroutine a classical NPC protocol that will be called several times. This classical NPC protocol needs to satisfy the properties on the previous slide, even if all but one of the players are corrupted. And there are protocols that achieve this, although their security against quantum adversaries is still kind of under active investigation. Throughout this talk, I will assume that we will have it as a black box. So in essence, I assume that this ideal trusted third party actually exists as a separate trustworthy player in our protocol. The protocol I will present is secure against coalitions of up to K minus one corrupted players, where K is the total number of players. And it's computationally secure. So there is some underlying hard problem that we assume cannot be solved by quantum computer in all the time. And I want to stress here that this computational assumption only comes from the underlying classical NPC. Our protocol works gate by gate, so we assume that the map phi is given in terms of some quantum circuit. The amount of quantum communication necessary for computing this circuit is in the order of K times D, where K is the number of players, and D is the depth of the circuit in terms of some specific gates, C naught and T. There's also an extra factor log N, the venison security parameter, and that factor arises due to some research generation that the players have to do in an offline phase of the protocol in the beginning. So this is what we'll get to in this talk, but before I present to our protocol, I want to briefly discuss some previous approaches to this task. Essentially, in previous literature, there have been two main approaches to building mpqc protocols. The first approach is to use quantum secret sharing, and here the idea is that every player distributes their quantum input by dividing it up into multiple shares and sending one share to each other player. The secret sharing scheme has a guarantee that you need more than some threshold number of shares in order to learn the input. So these two corrupted players in the bottom will not know what the input of the talk player is as long as the threshold is higher than two. At the same time, if you do have that threshold number of shares, you can always recover the input. So in particular, even if these two corrupted players change their shares or even throw them out completely, the honest player will still have enough of the information to successfully continue the computation. This approach leads to some elegant protocols, but it also does have a limitation. So suppose that also a third player is corrupted. To make sure that the three corrupted players cannot corrupt the entire computation, the secret sharing scheme must have a threshold such that the input can be recovered only from the three remaining honest shares. However, this would pose a problem because the corrupted players would also be able to recover the input from their three shares. So not only does it violate the privacy of player one's input, it also violates the quantum of cloning theorem, because if you can recover from both the top three players and the bottom three players shares, if you can successfully recover the input from that, we would have essentially cloned player one's input. So NPC protocols based on secret sharing seem to run into a barrier where only a strict minority of players is allowed to be dishonest. There is a second different approach that does not have this limitation. It's based on quantum authentication codes. And the idea is that instead of distributing the input so that at most some fraction can be corrupted, the players encode their input into an authentication code. So that it can be sent freely around to the other players. And even if a corrupted player holds the entire authenticated state, it cannot access or alter its content without being detected. The hope is that with quantum authentication codes, we can break the barrier that we have with secret sharing and design protocol that secure up to K minus one out of K dishonest players. This idea was originally proposed in a two player setting where they could tolerate up to one out of two dishonest players. So for K plus two, at least that security seems to hold, but now the goal is to expand this to a protocol for a general K, which we do in this work. So now I've explained to you the setting of multiple quantum computation with a dishonest majority. I've explained how authentication codes seem more promising than secret sharing to achieve this for dishonest majority. Next I will explain in a bit more detail the quantum authentication code that we use, and I'll explain a key concept in our protocol.  Later on, I'll give some more details on how the actual computation works, and I'll comment on how the players can jointly generate a resource that they will need called magic states. The specific code that we use is called the Clifford code, and the idea is fairly simple. The key is a random element C from the Clifford group on N plus one qubits, or N is the security parameter. It's not super important to know the exact definition of the Clifford group for this talk. It's efficient to know that it's a group of unitaries generated by a few single to two qubit gates. And that it looks random in the sense that if you apply a Clifford to a quantum state it acts as a kind of one time path to that state. The encoding of a single qubit state psi is done by simply apply, depending a number of zero qubit computation zero qubits to the state, and then applying the Clifford C to the entire state. We call these zero qubits traps to decode C inverse is applied and the traps are measured in the computational basis, if all the measurement between zero, then the authentication is accepted, I'm assuming the data hasn't changed. The guarantee that the Clifford code gives us is exactly this. For any attack a on an authenticated state of N plus one qubits, the probability that a changes the data psi, but is not detected that it still produces an all zero measurement is very inverse exponential in the security parameter. This is due to the structure of the Clifford group which actively randomly distributes an attack to all the qubits including the traps. As a bonus already hinted to it a little bit. The Clifford code also provides privacy. So it's also an encryption scheme and this is actually a property of all quantum authentication codes a quantum authentication code is necessarily also a quantum encryption scheme. So now the question becomes how can we use the Clifford code to achieve mpqc. As I already mentioned the basic idea is to have all players encode their inputs into the Clifford code. But immediately some questions arise with this. First of all, what can we say about the encoded inputs of a dishonest player, how can we trust that this state is actually a valid encoding. And secondly, an authentication code is used to guarantee that the data cannot be altered but in mpqc, we actually want to alter the data because we want to perform a computation. And the answer to both of these issues lies in the use of a classical multiparty computation through a classical mpc the honest players can kind of put a leash on the quantum actions of all the other players. They can pose classical challenges to check that the encoding is performed honestly, and they can use classical key updates to allow very specific alterations to the data, namely only those that are prescribed by the quantum circuit. In the next few slides, I'll tell you a little bit more about the first bullet point, how to test if an encoding encoding was applied honestly. We call this test the public authentication test and actually consists of two phases. The first is the encoding itself which becomes slightly more involved. And the second is the testing which is executed with the help of a classical mpc. Okay, so suppose the player one wants to encode his inputs. What he does is he prepares the Clifford code of this input as normal, except that he prepares double the amount of traps to and instead of them. Then he sends the quantum state to the next player who applies their own random Clifford C2 on top and it continues that way until every player has applied a random Clifford and sends it back to player one. So the state held by player one is now a Clifford encoding with twice the amount of traps and the key is C6 times C5, etc, up to C1. And this product which we'll call C is unknown to all the players as long as at least one player keeps their, their key C supply secrets. Okay, so now let's move on to the actual testing. Note that the traps these two n zeros were created only by player one. So we will ask player one to provide a proof that they were created in the whole zero state by having him sacrifice half of them and to a measurement. Using classical multi-party computation, we select a random linear map G on two n elements. But any such G as the property that G of Y is zero if and only if Y is zero. So on honestly generated traps applying G doesn't do anything. However, on this dishonestly generated traps, which have at least a one in there a random G maps them to a random non zero string. So then it suffices to only check half of that string, because if it's a random non zero string then with high probability, you will see already a one somewhere in the first half. So we're able to show a lemma that says roughly the following, applying a random G and then measuring half of the traps to check that they are zero gives you roughly the same guarantee as having measured all of the traps to check that they are zero. And concretely what we do is through a class. See, we ask player one to apply a Clifford consisting of three steps and do the quoting Clifford C, apply the random linear map G on the traps and the identity of the data. And then apply a fresh Clifford C prime on the data plus and of the traps. And the other end traps will get random bit flips indicated by random string bar. And player one is then asked to measure those last and bits in the computational basis and report the outcome to the classical PC. If you acted honestly then preparing the traps in the zero state applying Clifford instructed his measurement outcome will be are we can show that if he didn't act honestly. Then he cannot come up with this string are except if he guesses correctly, which is a very small probability. Okay, so after the public authentication test is passed. We have the guarantee that with high probability player one is now holding an authenticated state of the form C prime which is a new incoming key applied to the data and the n zero traps. The classical PC knows this key is C prime. Important to note that in second step, this product of CG and C prime is given as a group element of the Clifford group. So particular player one doesn't learn C or G or C prime in the clear and one has to show of course that the product of these three elements does not reveal any relevant information about the individual components, which is the case but I won't go into that today. So to step back a bit from the technical details, the public authentication test achieves the following one player performs the actual test in that he holds the quantum state applies the Clifford measures etc. Well, the, at the same time, all players can verify the test through the classical multi party competition. So even with only a single honest player in the group any cheating will be detected. The authentication test is used in various protocols. So for example, at the start to test whether everybody encode honestly like I described in the previous slide. But also we use a variant of this test during computations where the players can show that they executed a computation step honestly. That brings me to the next section of this talk. I'm going to outline how the classical PC can be used to compute on authenticated quantum data. Essentially computation will have a step by step or gate by gate. We define a collection of sub protocols one for each gated G that will update the encoding of side to an encoding of G applied to psi, possibly under a different key. So we define protocols for single cubit Clifford, which will be easy for the CNOT gate, which is a two cubit Clifford, and for the T gate, which is a non Clifford gate. Together, these three types of gates can be used to construct circuits for general quantum unitaries. We also give a protocol for computational basis measurements so that we can build general CPTP maps. We discussed the last one in this talk, but it's based on some very similar ideas to the public authentication test where one player measures and the rest can verify the measurement. All right, so let's start with the easiest case the single cubit Clifford. This one will feel a bit like cheating because of how simple it is. But let's say we want to apply single cubit Clifford G to an encoded state held by the first player, which is a form C applied to psi and some traps. So if the query computation knows the key C through classical NPC, the players can update their key to a key C prime, which is the product of C with the inverse of G. And if one would now decode the same quantum state using this new key C prime, you can verify that it would actually decode to the pre measurement state of G of psi tensor the zeros. You can measure the zeros to check that they're still in the correct state, and you would end up with G of psi. So that's all. The protocol for single cubit gate is really only a classical key update. And the simplicity is of course due to the fact that we're using the Clifford code so the keys themselves are already single cubit Cliffords. So next let's look at slightly more complicated case a two cubit Clifford the C not we still want to apply it to a state of this form. We have two data cubits psi one psi two each with their own traps and their own liver keys. And the same strategy as before with the classical key update does not work because the new key would not be in product form. In fact, we need to actually do some quantum action. This time and simplified version of the protocols the following. Both cubits get sent to a single player let's say one again, who applies a product of three Cliffords and decoding a C not on the relevant data cubits and encoding with fresh keys C one prime C two prime. And then executes a public authentication test to show that nothing happens to the trap cubit that wasn't supposed to happen. Now if you would spend some time staring at this you may see that this product here. We just told to player one in the first step doesn't necessarily perfectly hide all the information with the old keys C one C two or the new keys C one prime C two prime. In reality, our protocol is slightly more complicated and involves applying a big random Clifford of two and was too cubit on the entire state. And for this the quantum state needs to be sent around so that all players can apply a part of that big Clifford very much like what we did in the beginning of the encoding protocol. So in reality we do need some quantum communication to execute a C not. Finally, I'll show you the sub protocol for a non cliff okay this is the tea gate. This is actually the idea of magic state computation which is depicted by this circuit here. You start with some quantum side and some fixed state T of plus, which is called a magic state for the tea gate, and you execute the circuit consisting of a C not measurement and some classically controlled Clifford control measurement outcome. So what you will end up with on the other side is a state T applied to psi proof this not very involved you can verify for yourself just by computing the evolution of the state through the circuits. But for all these operations C not measurement Clifford, we actually already have protocols. So if we have an encoding of our input psi and an encoding of the magic state. Then, we can produce an encoding of T applied to psi simply by changing together the sub protocols for these gates and measurement. There's just one issue with this approach and that is that nobody can be trusted to honestly create encoded magic states. That brings me to the final part of this talk. How do we generate Clifford code encodings of magic states. I'm going to be pretty brief just giving you the high level overview with some intuitive notions. The generation precedes in two phases. One player creates a whole bunch of encoded magic states in the order of K times and more case number of players and it's the security parameter. Each magic state has their key and these entrusted magic states are in these two phases purified to a single trusted magic state. The first phase is a cutting cheese. The states are also into the next player who selects and random states and asks through the classical NPC for the key so that they can do crypt and test whether they're in the right state. And this continues around the table with every player testing and random states until they're on the left at the end. And in the end there's n states left. And these remaining n copies are pretty good in the sense that with very high probability only a small constant fraction is not in the correct state. And this promise is sufficient for the second phase, where we apply magic state distillation. This is a Clifford circuit that takes n pretty good states as input. And the players can execute the circuits through a multiple computation using the sub protocols for Clifford gates, because those don't require magic states. And in the end, this circuit produces a single magic state that is promised to me very good and with very good I mean that with very high probability the state is exponentially close to the correct state. So this is how to create a single magic state for a single ticket can be done way at the beginning of the protocol and it's known beforehand how many tickets will be executed. All these magic states can be generated in parallel. Okay, to summarize, I have presented the first protocol for multi party quantum computation that is secure, even if all but one of the players is dishonest, the security is computational based on the security of the underlying classical scheme. And the ideas of the protocol are based on a two party computation protocol to bring us and survive. But in contrast to a naive extension of the protocol are ciphertext or encoded states only require two and plus one qubits for security parameter and computation is done gate by gate where Clifford operations are relatively simple, although two qubit gates such as the CNOT, we do require some quantum communication and a public authentication test. A team gate requires more work. In particular, it needs an encoded magic state which we generate from K times and untrusted magic states. This is a big improvement over the end to the power K magic states that were needed in the naive extension of the two party computation protocol. And with that, I thank you for your attention, and I wish you a very rewarding virtual Europe experience.


remember a hallmark card when you carry enough to send the very best tonight from Hollywood the makers of hallmark greeting cards bring you Charles Bickford in Kenyon Nicholson's The Barker on the Hallmark Playhouse each week Hallmark will bring you Hollywood's greatest stars in outstanding stories chosen by one of the world's best known authors they distinguish novelist Mr. James Hilton good evening ladies and gentlemen this is James Hilton tonight on our hallmark playhouse we present our dramatization of a play that portrays a familiar slice of American life it is The Barker by Mr. Kenyon Nicholson and it has the fascinating background of a carnival I suppose there's nobody who doesn't enjoy a carnival for its color, gaiety, and high spirits under the summer skies the carnival is a world of its own with its own glamour, its own nostalgias, its own excitement, passions, and heart Mr. Nicholson has captured all this with much skill and no wonder because well you know it's rare to find a university professor traveling with a carnival and it's equally rare to find a carnival man who is a professor of dramatic composition at a university but Mr. Nicholson is this rarity and the result is a very fine play we are happy to have in the starting role that excellent actor Mr. Charles Bickford and now Frank Goss have you a word about hallmark hallmark is the name to remember when you want to remember your friends for birthdays weddings anniversaries holidays there is a quality about hallmark cards that whispers good taste and you'll send them with pride for that identifying hallmark on the back adds meaning it says you cared enough to send the very best now hallmark playhouse presenting Kenyon Nicholson's the Barker starring Charles Bickford right up ladies and gentlemen step right up step a little closer please we're now standing in front of the big feature attraction of Colonel Gowdy's big city show the biggest show for the money that has ever played your beautiful little city on the inside you'll see Princess Kaleema the pride of Sonny Honolulu playing and singing haunting melodies from those far off islands of the Pacific hurry up with that dressing princess you want to go to that dance with me can't stop isn't fast and nifty come on in good show tonight kid thanks say what this dance we're going to it's some local fraternal order we got to go it's good for business I like that dress makes your eyes look blue they are blue nifty when are we going to get now look kid don't start that again we'll never get to the dance it's been six years tonight since we got engaged do you realize that I told you then you were crazy to accept me I got a kid to put through college before I can think about getting married again it's a law college it's gonna cost me plenty gee that kids are wonder got brains to living on the farm with his grandparents has made him a regular husky nifty I'd be glad to help out on the kids college oh I gotta do it he isn't your responsibility carry is mine look baby I don't blame me for getting a patient I wouldn't blame you for walking out I'd never walk out on you you know that hey nifty you in there with Carrie yep what is it happened there's a friend of yours out here gonna send them in sure who is it hello dad Chris well I'll be hanged where's your hat well that's a fine way to welcome your long-lost son I must say hurry this is Chris hi Chris this is Carrie I do what the heck are you doing here what you do run off from your grandpa and grandma no they knew I was leaving I got loads of them to see you so I took the first freight out for here you hopped a freight what's it good of me shelling out of good money to get you educated if you're gonna be a bum dad schools let out for the summer seemed to me it was time we got acquainted I thought you'd be glad to see me well it isn't that I'm not glad to see you but I don't want you mixed up in this kind of life you're gonna be a lawyer gotta have a little class to you you're 19 now ain't you going on 20 dead I'm like you I don't want to be stuck on a farm I'm gonna travel you run the show for Colonel Gowdy I thought maybe you'd get him to give me a job you're forgetting about being a lawyer oh no I'm gonna be a lawyer like you want me to and after I've been on the road for a summer I'll be good and ready to get down to studying again you see if I won't well if you didn't stay it'll be only be for the summer you'd have to work thanks dad I'll work I'll do anything you're gonna be a great summer a great summer sure is sure it is come on kid I'll get you settled what about that dance it's too late now that boat sailed yeah that's what I'm afraid of your son oh hiya dad I finished saw on this pile of lumber for the new booth good for you and I'm I start well lunch is only 15 minutes off you like the carnival as much as you thought you would oh I like it more what a way to live every week a new part of the country new people new sites every time you come to you you fall in love with your country all over again yeah it's a pretty good country and the folks in the carnival there's swell you're lucky to have a girl like Carrie oh wait a minute did you think I didn't know about Carrie all you have to do is see you two together you know seeing you two together has made me realize what a girl like that can mean in your life don't you go getting a lot of ideas you're just a romantic kid I'm managing a lot of things Carrie I've been thinking things over and I decided the only thing to do is lay our cards on the table you and me have been calling together for some time and but well it comes down to this we're through oh understand this isn't something I'm doing on the spur of the moment but well there are other things to consider we got to call it a day that's all oh nifty you don't mean what have I done what have I said you want me to get along better with a kid you want me to know it's just well it's just not going to work out that's all nifty I don't even want to live without you I don't know what I do without you don't get me wrong I'm not ditching you as far as the show is concerned you're a swell little dancer you can have your job as long as I'm boss of the outfit all I mean is the you and me part of nifty no don't do this to me all the plans we've made Harry I don't like this any better than you do but it's the way things have to be and that's all there is to it I've got to think of Chris Chris also that's it I'm not good enough for your precious Chris try to understand you said what you came to say now get out of here get out what's the matter oh is that all well don't cry like that you make up before the show you always do no not this time oh no you'd think I was dirt under his feet it's that kid everything was all right till that kid walked in here yeah to have make me sick with their fine air someday that kid will show it someday he'll find out what it's like to love someone and then have him walk out on you wait till that kid pulls for some girl all I hope is I'm around to see it wait a minute maybe nifty would come back to me Lou would you do it would I do it would you help me get the kid away from nifty oh now wait a minute he's too young for me older than you are listen I've seen the kid looking at you he's got a crush on you now Lou if you had the stake you blow the show tomorrow wouldn't I sure would oh if you'll make this kid fall for y'all give you a hundred bucks a hundred bucks will you do it I'd sure be a sucker not to try wouldn't I was just watching the people shoot the ducks none of the customers seem to be doing very well I bet you could hit on right away half you're not very busy give Chris a gun Lou here you are Chris go ahead try it see I told you you could do it she was was easy hand the gentleman down a cupey dog no no thanks app thanks for the shooting don't mention it it's a beautiful night isn't it it sure is what did you used to do back home on nights like this oh I go over to my girl's house a special girl no whatever girl it happened to be and we'd go for a walk and talk do you feel like taking a walk tonight I sure do if you'll come with me well let's go oh I'm sorry dad told you to get up and build them jacks you want to stay around here you gotta brace up and take more interest in what's going on you get to bed night you wouldn't be so groggy mornings where'd you go last night after we shut down here I looked around for you oh I was nowhere's in particular I took a walk look I don't mean to be nosy Chris but I'm counting on you you and me hit it off pretty good and there's no reason why after you get to be a lawyer we can't settle down some ways together I've got plans for us Chris just think how nice it'll be to have an office of your own people coming to you to get them out of trouble more dough than you'll know what to do with come on Chris let's be pals what do you say aren't we dead these last few days I'm not sure I'm not sure Chris look at the Ferris wheel in the carnival down there looks like a kid's toy doesn't it yeah it's like another world up here on top of the hill you know it's funny I always knew that someday there'd be one special girl but I thought I'd have to look for a long time I never dreamed I'd find you so soon Chris there's something I got to tell you the only thing I want you to tell me is yes I'll marry you don't know Chris there's something you've got to listen to something I've got to tell you you mean about Carrie and a hundred dollars you know about that honest people who live in tents don't really have secrets from each other it doesn't matter how it started all that matters is how we take it from here oh Chris I I don't know what to say to you I told you what to say I'm not good enough for you that isn't what I want to hear oh Chris what am I gonna do with you just love me I do I do love you Chris then will you marry me Lou Chris thank you so much I guess that calls for a kiss I thought so you thought you're putting something over on me sneaking off up here didn't you but I followed you get out Lou I want to talk to Chris go ahead honey I'll see you back again I'm glad you followed us dad I'm glad you know about Lou and me I was wondering how to tell you dad I'm in love with Lou and love and Lou's in love with me you bet she is she loves you so much she took a hundred bucks to get you to fall for it you didn't know that did you yes I knew it she was doing it for Carrie someone had to do something for Carrie when you walked out on her it's my business thought you were too good for it didn't you you think it's so good for everyone in the carnival well okay I guess that makes you too good for me to know I'm not too good for them this is my life these are my people but they're not yours you're going to be a lawyer you're gonna be a big man with important friends you're gonna marry the right kind of girl from the right kind of family dad you got Lou all wrong she told me about the hundred bucks herself she wasn't gonna take the money well she'd better she'll need it she's fired that's right we don't want it with the show anymore who doesn't want you I'm the boss of the show and I say she's through then I'm going with it you're doing no such thing you can't make me stay you'll see whether I can make you a notch of my son and you'll do what I say I thought you were my friend as well as my father I'm being your friend now if you only had sense enough to realize it you're not gonna break low in the air no matter what you try you're not gonna break us up no well just watch me just watch me in a moment James Hilton will return to present the second act of the Barker starring Charles Bickford but first why didn't someone think of that before you know I think that's what you're going to say when you see your first hallmark bouquet for hallmark bouquets are something brand new and beautiful the most delightfully different greeting card you've ever seen each new hallmark bouquet brings you a graceful cutout basket topped with a large bow of crisp taffeta ribbon and brimming with beautiful flowers ruby red roses or alabaster gardenia's or delicate sweet peas so vividly reproduced you can almost sense their fragrance but unlike flowers that fade a hallmark bouquet keeps its beauty always yes these new hallmark bouquets are large and lovely and lasting and though they cost only 50 cents each one embodies the unmistakable good taste that distinguishes every card that bears the hallmark name there's a hallmark bouquet for that very particular anniversary or birthday or special get well cheer or just for a friendly greeting for every occasion that warrants extra thought and care and you'll find these exclusive hallmark bouquets at the friendly store where you buy your hallmark cards now james hilton in the second act of kenya nicholson's the barker starring charles bickford early the next morning chris and lou slipped away from the carnival and got married in the office of the justice of the peace they came back then to face what they knew they had to face lou was alone in her tent when nifty walk in i just talked to chris you tell me what you're done i ought to shove my fist right down your throat no you're trying to scare me nifty well scare easy what's your game i haven't got any game i married him because i love him you're loving him's only more reason for letting him go he's not your kind he's only a green country kid that doesn't know the score lou he'll never forgive you for tricking him in the marriage i didn't trick him ask him yourself talk to him tell him anything you want about me see if you can make him change his mind leave me alone with sure are you packed well your daddy doesn't seem to fancy me as a daughter in law first i want to talk to you lou you know what you said i'll be outside honey if you want where you're going i told him i'd step out while he has his say he can say it in front of you anything he has to say to one of us is for both of us now what's on your mind dad what did you want to say nothing nothing at all go away with her don't ever let me see you again she's got you she can keep you you ain't worth saving okay that's the way you feel about it okay come on lou so long nifty sit down nifty you're hitting my arm just one question i want you to answer if you lie to me i'll kill you did you get lou to take him away from me did you answer me no you're lying you know you are doing let go of her kill me get out hey what's going on here it was nothing kind of gaudy just a just a little step go to your tent carry nifty you run this show for me if you don't want carry here all you have to do is to say so and we'll fire but we can't have scenes like this going on i don't care what you do with her now i'm leaving kennel you you know you don't mean that nifty i need you haven't i always played square with you yeah but i'm going just the same i can't stand it here any longer but nifty look stay okay when the season's over i'm through well nifty you picked one heck of a night to get out of the show business listen to that rain it's gonna clear up before showtime how do you know have i ever missed well by the law of averages you gotta miss sometime where's doc i said i'd go over the spiel with him well doc's never going to draw the customers like you do he belongs right where he is in the pinball concession i'm nifty give it another chance you're gonna miss it i know it hap i want to miss a lot of things i'm gonna miss the lights and the smell of the popcon the peanuts i'm gonna miss the look of the towns when we're setting up the show in the early morning i'm gonna miss the faces of the little kids staring up at you and planking down their 10 cents i'm gonna miss that holiday air that comes in with the customers and i'm gonna miss all the gang the ribbings and the beefings that go on as well as the good times yep i'm gonna miss it all you shouldn't leave nifty this is where you belong well i'm leaving uh nifty i uh i got a card from lou and chris they're okay what the heck do i care i uh i'll just leave it here on the table maybe you'd like to look at it before you go what do you want carry i know you didn't want to see me but i had to come all the same i want to talk to you we got nothing to say look i'm getting out of here but i don't see why after all these weeks you two can't get some sense in your heads and part friends see you later what have you got to say to me well first of all i i'm not here with any idea of getting you to make it up with me i just wanted to say that even though you have kicked me off the show i i'm i'm sorry i didn't think too much about what i was doing when i got loo to go after yeah well it's a little late for post mortems i know you won't forgive me but i had to say it anyhow i'm sorry and good luck nifty hey nifty what do you think it's stop raining it's clearing all hey nifty tell you want to hear me do this spiel yeah sure yeah all right uh ladies and gentlemen uh step right up you're now standing in front of the front of the big feature show the middle way the biggest show gary you're going on tonight no you know you put one of the other girls from the park well just for all time's sake maybe you better go on oh nifty well don't stand there blubbering go get your costume on thanks nifty the biggest show of the money ever played your time what's i'm steam into it don't just talk words get right down and tell him about it believe it yourself yeah sure now we introduce in princess uh yeah let's see a little bit of a kalima a little bit of the pride of sunny hana lula yeah step out a little closer there uh you're now standing in front of the big feature show the middle way gary's dying on his feet nifty you should never have taken him away from the pinball concession get a bigger show for the money as they replace your beautiful little city oh get up there nifty and show him how to do it yeah step right up on the inside you on the inside the inside ladies and gentlemen as my assistant has been telling you you'll see princess kalima the pride of sunny hana lula sure saved the day and if you'll reconsider your going away i'll i'll give you a quarter interest in the show well i have missed my train and i wouldn't want to see the show go on the rocks good good i'll hurry over to my wagon to make out the contract i don't go away oh gary gary your job's yours if you still want you uh would you uh uh well happens to be a dance at the most hall that the colonel thinks we should take in nifty i uh i have got a card from chris and lou it's right here lou's got a job hoping it in the nightclub chris is working in an office carry it's a law office he's going to get there yet you bet he is since he's married and settled down i don't see any reason why his old man shouldn't be we both made mistakes carry i almost made the biggest one of all tonight this is where i belong this is home you're my girl and baby if you'll have me it's going to be you and me in the midway from here on in yeah from here on in in a moment james helton and charles bickford will return but first haven't you often thought wouldn't it be wonderful if people could send their friends flowers that never fade flowers that would stay bright and beautiful forever that's just what you can do now with the new hallmark bouquets the newest kind of greeting card each hallmark bouquet is a delicately cut out basket that stands by itself nine inches high overflowing with beautiful flowers and topped with a large bow of chris paffeta ribbon there is a card carrying your greeting tied at the top of the basket and when you open the bouquet there is your friendly message whatever the occasion for graduations for birthdays for anniversaries to cheer someone who was ill or just to say hello you'll find the hallmark bouquet that will give lasting pleasure to those you remember they cost only fifty cents each but they look so expensive discover this original and charming way to remember your friends stop in tomorrow at the friendly store where you buy your hallmark cards and ask to see the new hallmark bouquets here again is james helton it's very exciting to hear a character portrait just as you imagined when you first read the play and mr bickford i want to thank you for giving me this experience tonight it was a pleasure for me too and thanks to lorraine tuttle gloria blondell bill tracy and the rest of the cast you know i look forward every week to the fine programs you have on the hallmark playhouse in fact it's pretty hard to forget how i'll mark under any conditions you see those greeting cards of yours are such constant reminders of very pleasant associations well that's very nice of you to say mr bickford it's good to know you've enjoyed being here as much as we've enjoyed having you and we hope you'll be listening next week when we present a b shifrin's i like it here starring paul lucas our hallmark playhouses every thursday our director producer is d engelbach our music is composed and conducted by lin marie and our script tonight was adapted by gene holloway ladies and gentlemen for 27 years america has remembered her disabled servicemen by wearing red paper poppy those poppies go on sale next saturday in the american legion auxiliaries annual drive show your remembrance of the sacrifice our servicemen made by making this year's poppy sale the biggest yet until next thursday then this is james elton saying goodnight look for hallmark cards that are sold only in stores that have been carefully selected to give you expert and friendly service remember hallmark cards when you carry enough to send the very best charles bickford will soon be seen co-starred with bing crosby in the paramount picture riding high this is frank gauss saying goodnight to you all and inviting you next thursday and every thursday you'll tune in one half hour earlier and listen to the adventures of kasey crime photographer followed by the hallmark playhouse this is cbs the columbia broadcasting system


Okay, we're back. This is Dave Vellante of Wikibon.org, and this is theCUBE, SiliconANGLE's continuous production. We're here live at MongoDB Days in New York City at the Marriott Marquee. We're talking about Mongo, its innovations, the developer community. We've got a number of practitioners on. Rackspace is here. Rackspace made a big announcement today with Mongo, hiding Mongo as a service. The first enterprise-grade Mongo. We're going to unpack that and talk to the folks at Rackspace about that. Kenny Gorman is here, as well as Chris Lalonde. These guys are both co-founders of a company called Object Rocket, which was acquired by Rackspace. Gentlemen, welcome to theCUBE. Thank you. So let's start with Object Rocket. We love the entrepreneur stories. So take us back to the early days of Object Rocket. What was that all about? You guys are co-founders, and tell us a little bit about that startup and how you grew and how you made the exit. Yeah, super exciting. I mean, Kenny and I have known each other for better than a decade, so we've always hung out and stuff. And at the beginning of it, we really recognized the need for a premium day-to-day service in the cloud. And so we were talking one day and we decided that we were going to go do it. That was really the starting Object Rocket. We started it early in 2012, and about a year later, we got acquired by Rackspace. It was quite the year. That's awesome. Yeah, so what was that like? How'd you get funded? How many people did you have when you sold to Rackspace? What was that all about? So we went through a round of funding, the Friends and Family Round. We were able to tap into our network of folks that we worked with previously. And they really saw that the project that we were working on was super compelling. And we thought we could bring to the table a new level of experience for MongoDB users. And so we worked with them to get a round of funding. It was just three of us for the longest time, some contractors and some help. And we just got it done. We cranked it, we were rackin' stackin', writein' code, doin' it all, so. A lot of late nights. Talk about databases of service. We're talkin' to Oracle the other day and they were tellin' us how they're doin' databases of service. What's the difference between, the databases of service that a startup does versus a sort of a traditional software company? Sure, I can answer. So I think a lot of folks out there are looking to kind of forget about infrastructure. They want to develop compelling applications. They want to have a quick time to market. And they don't really want to worry about all the intricacies of a database and cash partitioning and networking, all the stuff that comes along with running a database. And so, Object Rocket, it's a true database as a service, right? So what we're trying to do is provide an interface that's a higher order than maybe most other database hosters. And so that's why we built Object Rocket. All right, now you guys made an announcement today. Just hit the wire. Rackspace and TenGen team up to deliver the first cloud platform engineered for MongoDB solutions. Now there are other clouds that are running MongoDB. So specifically what did you guys announce and what's different about it? Well today we're announcing a partnership with TenGen. They're the MongoDB company. I think the combination of TenGen's expertise with Mongo and our ability to deploy, develop and scale Mongo is super powerful for customers. It lets people go from literally a small one gig instance up to terabytes of data all without seamlessly, without having to do anything.  So talk about, I mean you can't talk cloud without talking about Amazon. They're kind of the gorilla in the same time they're the disruptor. So how do you guys differentiate? I mean when you were a startup, were you using Amazon? Were you using Rackspace? We weren't. I mean the key differentiator about Object Rocket and one of the things that made, one of the things that we really started fundamentally was that you can't take a regular cloud infrastructure and really scale a database on it. You wouldn't take a front end web server at eBay, put Oracle on it and expect that to run eBay's database. That just wouldn't scale for you, that wouldn't work. And so it's a similar principle. We have built our platform from the ground up. So we've gone and got our own data centers when we started. We racked computers. We specifically purposely built those computers. We've tweaked the operating system. We've tweaked the network interfaces. We've built all that stuff up to make a system that's going to scale with you from literally a very small instance to scale all the way up seamlessly up to terabytes, petabytes really, of storage. Now why, you said Chris, it wouldn't scale. Why wouldn't it? Is it just because the cost? I mean it would cost you a billion dollars to make it work? Is that the issue? It would. There's a bunch of challenges around scale that people don't normally understand. You not only have, think about it this way. Think about eBay. So let's step back to eBay for example. eBay had years before they got to a million customers. They had years before they got to a million customers and they still had scale problems early days. And they had scale problems, they had a lot of money and so they could go buy engineers and they could go buy a lot of hardware and they could go buy all that expertise. Now compare that to Instagram. How many weeks was it before Instagram had a million customers? So the scale problem has become super time compressed today and developers really need to focus on developing and getting their product built and not having to worry about that scale problem. And really the only way to do that is to sort of outsource your scale problem to a service and that's the real differentiator for us. We're trying to not only deal with the hardware, growing all that hardware stuff but also being the DBA for those folks so they don't have to worry about it. That's really the answer. So how do you guys, how do you differentiate from Amazon? So Amazon today is a general compute platform. Let's just call it that. You can run anything you want on it and it's easy to provision and it's fine. On our system we're tailor-built, as Chris was talking, tailor-built for MongoDB. So we've paid attention to all the little details that make MongoDB so great. So we're not a virtualized environment. We use a bare metal style approach. We scale easily. So the context of Mongo is inside our system. So folks need to scale, they can click a button and add new shards a MongoDB term for scaling new horizontally, new shards horizontally. So we provide those APIs and those hooks to scale MongoDB beyond what someone can do on a bare platform like something like Amazon. So you use bare metal, presumably because you just don't want a virtualization. So you don't want an abstraction layer in there. Correct. Slowing you down, right? That's right. So I love when I get practitioners on because you help me squint through sort of some of the vendor marketing. Because when you talk to the virtualization vendors that say, oh no, we can run our apps. There's no degradation of performance. You say, how can that be? There is, there is. And I think what they're saying is we can run, generation N minus two, compare that with what we can do today and there's no degradation in performance. But apples to apples. That's right. An abstraction layer is going to be problematic from a performance standpoint. That's why you choose to go bare metal. Is that correct premise? That is correct. And we've tried to focus on every bit of it, right? So our disk is all SSD. So we're all solid state. So the disk subsystem is state-of-the-art. Our systems are state-of-the-art, right? So we try to make everything state-of-the-art and give Mongo the best chance to have the best platform, right? And so memory partition was part of that, CPU partition was part of that, there middle speed was part of that, sharding was part of that, SSDs are part of that, et cetera. And so that also provides, talk about the security elements and advantages. When you go to non-virtualized, non-multi-tenant. Yeah, I can talk to that. So our system is, security has been a key tenant of ours. So in our system, when you provision instances, they're closed off by default. Users can go in and open an ACL to whatever, front-end application service that they want to run. So that's kind of one thing. The second thing is we're SSL-enabled. So we terminate SSL on our side. Customers can use SSL clients to us and be fully secure. And lastly, all our transmissions to our slaves, to replicas, to any other component within our system is all over SSL. And that's just to make sure that security is really a top notch, a first-level citizen in our design, in our architecture. So you mentioned, you use SS, I mean we follow the stuff, the scale out, the whole SSD, looking at all kinds of innovations going on there and the impact from an application development standpoint. I wonder if you could talk a little bit more about that. Just in terms of how, well, let me ask you this way. How does quality of service play in there? Now that you've got this capability of a persistent medium that's not spinning, can you begin to provision not only capacity, but performance as well and pin an application to that? Sure, absolutely. I mean the, you know, the sort of two technologies, SSDs and the new cards coming out with folks like from Fusion IO or LSI really are changing the game, right? Spinning disks are 1950s technology. Let's be clear about it. And we haven't done anything with those since the 1950s. It's basically the same thing made faster and stronger. So SSDs are really the future and those flashcards are the future, next generation things to go. It's a fantastic technology. You can do exactly what you're saying. You can start doing things like carving out specific IOPS per customer and give them whatever they need. You know, you can do it dynamically, right? You can be flexible with your IO sub-system, which is really the key component of this architecture is the IO sub-system has to be super performant. And if you can dynamically allocate that stuff, it gives you the best combination, right? You can like scale your IO sub-system, not just the box anymore, right? So you're saying I can through an API call, make a request for both capacity, 50 gigabytes capacity and a thousand IOPS, and then change that on the fly. That's the idea, yeah, that's the idea. So we have our other co-founder, Eric Beebe, and his staff have become quite experts in SSDs. So these guys are boy geniuses and they are working on sort of this next generation of flash storage. Today we have sort of a current generation. They're bringing in the next generation. So we're super excited about sort of the next level that we'll be able to take this game to. Yeah, so how about this notion of being able to actually change the way in which you write applications? So things like putting the whole database into the flash system or even doing things like atomic rights, I mean is that something that you guys are playing around with and how does that affect your performance? So we're always concerned about data preservation, data quality and availability. And so that's a key component with flash storage is things like write amplification, trim support, and making sure that we're really using the best of great components in these SSDs to make sure that we provide super available, super fast service. So that's part of what we provide. Customers don't even need to worry about it, right? They just go on our service. So you're architecting that. That's correct. Or however you do it. That's what we believe databases as a service is, right? All those things are under the covers. We take care of them. You don't need to worry about them. So really simplifying the developer's life. They can focus on writing algorithms or whatever it is they want to do. Yeah, it looks like, you know, part of the foundation of the company was I was trying to write an application and I just got super, super frustrated with having to configure everything all the time.  That's available all the time and that will just scale with it. Like, there just wasn't that solution in the marketplace. Let's start a company. That's right. That's awesome. So how many guys were you when you sold to Rackspace? Three. So we were three then, the three founders, and now we're seven. The team of seven are really great expert guys and we're continuing to grow. So we're hiring and we're moving on. Who are you hiring? What type of people are you looking for? It's really, it's actually generalists. The reason is that generalists have this idea of being able to work in all these different areas because that's what we're doing, right? We're not just developing code. We're not just managing servers. We're not just dealing with hardware infrastructure. People have to really understand how all those components fit together to make a really great platform for folks. So you guys live in DevOps. Yeah, that's right. Okay, so you're looking for people who can. Python folks, Mongo folks, systems engineering folks, any of the languages that Mongo supports, the driver Ruby, Node guys, whatever, developers and developers and DevOps guys that come help and build this out. Why Mongo? I mean, you had a lot of choices out there. Why did you guys settle on? I can talk about it. So MongoDB is an interesting beast. My background's in Oracle, we're at eBay and PayPal and even Postgres to some extent. But when Mongo came around, it was such an interesting paradigm shift to go from a relational to a document-oriented storage. It was so easy to develop applications on Mongo and so many of the popular use cases around today's collaborative and social applications around tagging and photos and rich media. All that works really easily in Mongo. And so like I was saying earlier, folks can develop applications and just not worry about the API they're using. They can easily serialize their data to an API. They can retrieve and write that data in a very easy format. It matches a lot of today's OO programming models. It's just really a natural fit. So how about scale? People often sometimes throw out a knockoff on Mongo. Oh, it's scalability issues. I wonder if you guys could talk to that a little bit. They're probably doing it wrong. Would you say that again? They're doing it wrong. Yeah, yeah. Well, add some color to that. You know, I think MongoDB's a fantastic API to develop against. I think as you start to run it at scale, there's some challenges. And I think those challenges are around, a lot of the things that we're working to solve, frankly, getting disk to memory ratios right, getting the proper speed of disk, understanding the profile of their queries, understanding the tuning of their queries, running things like componentry, like balancers and things in the background and giving the right IO to those things. Those are all things that we have to take into consideration to scale Mongo. Yeah, go ahead. I'd add in is that I think that Mongo sometimes gets a bad rap because people have put it in the wrong platform. They did what I was talking about earlier. You don't take a web server and put a database on top of it and say, that's going to scale for them. That just isn't how, like, that doesn't work at scale. If you've worked in a place that's had to deal with a lot of scale very quickly, you understand that a database has a very specific requirements in terms of CPU, IO, bandwidth, all of those things. And if you just think you're going to go and take any old instance off the cloud and throw a database, any database software, forget about Mongo, and that just isn't going to work. And that's, again, that's the key component of why we started the company. We built it from scratch to do that. So it'd be a great database platform. Yeah, you guys come from that traditional RDBMS world. So you see the changes going on.  It wouldn't work, right? So when you look at the shift in the marketplace, I mean, what percent of the data sources out there actually need ACID and actually, you know, need to face commits and things like that? No, you're exactly right. You know, we've, as a, you know, humanity is just adding more and more data. And the fact of the matter is, is that it doesn't always need to be ACID compliant. There are very specific cases. And what's great, you know, what, the real advantage that developers today have is that they actually have now a suite of tools, right? It's not just Mongo, it's Memcache, it's a whole bunch of other, most people's solutions. That's a key point. That's a real good point. And that whole suite of tools allows them to develop different things for different, you know, processes. Like, again, if you're at some major place, you're not just using one single data source, right? You're using a set of these tools. You apply them to the right place. You have to be able to scale those things, but it is really that. And that's why this is, like, right now, is a super exciting time in databases in general. It's just awesome. Now, help me with this. I'm going to come back to that, too, because it is a super time for databases. So, help me unpack some of the dissonance here, because on the one hand, we're just talking about, you don't need necessarily ACID compliance and all this other traditional database stuff.  So, is that just a matter of maturity? You don't need to go all the way, or actually, is there an opportunity to go further? What do you see happening there? Are the old data warehouses a dinosaur? I don't know. I think there's more options in the toolbox, right? There's more tools in the toolbox. And I think the challenge for developers and DevOps guys today is to figure out what the right tool is for the task at hand, if you're in a big org, you might have a specific project within that org.  So, I think it's really important for folks to go out there, understand the tools in front of them, whether it's a column store, a document store, a relational database, you know, Informatica or data warehousing and big data Hadoop-style stuff, they all have different places in the data ecosystem. And to figure out what they do best and why to use them and how to use them, I think that's the new challenge, not whether or not how you use Oracle, how you use any one of these tools. Yeah, and from a rack spaces standpoint, they want to provide as many of those tools in the toolbox as possible. And then let the peers and let the community do its thing to help people figure out what the right strategic fit is. Right, absolutely. I mean, the real idea here is to let the developer develop and really focus on, again, building their product, using the right tool to build their product. And we provide all of that backend scale and performance growth for them. And simplicity. Yeah, absolutely. That's exactly it. That's really the driver to Mongo, it seems to me, is to just simplify everybody's lives and then, as you say, maybe it gets a bad rap and scale, but as it matures, it addresses that over time and it says the challenge is right, you got to move faster than the market can move it. Here's what it's doing so. You mentioned now is a great time to be a database. 10 years ago, database was really boring, you know? The company's getting bought up, IBM and Oracle sort of and Microsoft dominate. And now this whole wave of no sequel comes along. I mean, it's not just Mongo, it's many, many others. It's super dynamic and, you know, what's great about the competitors in the field is that it's pushing, you're pushing the boundaries, you always have to push it forward. And that's why it is really a super exciting time. You're seeing all kinds of new technologies come out, people doing really different things that are really exciting and changing how developers develop and what we can have is applications really. All right, gentlemen, we're getting the hook here. This is a great discussion. I really enjoyed it. Thanks for coming on theCUBE. Really pleasure meeting you. Appreciate it, thanks. All right, keep it right there. We're right back with our next guest. We're live in New York City at the MongoDB days. This is theCUBE.


Use these five techniques in any language, paper one, question number two, response, alliteration, metaphor, simile, hyperbole, and my personal favorite, semantic field. You are guaranteed to find these in any extract that you read for language, paper one.