<p>From what you describe, I'm guessing that what you are looking for is something like <a href="https://www.casascius.com/" rel="nofollow">Casascius coins</a>. These display the public key but conceal the private key behind a tamper evident holographic sticker. This means that when you pass a physical coin to someone, they know that you don't have the private key, so they are the sole owner of the bitcoins at that address.</p>

<p>If this is what you are looking for, there are a few problems to bear in mind:</p>

<ul>
<li>The manufacturer of the coins puts the private key behind the sticker, so you are trusting that they did not also keep a record of the private key.</li>
<li>You are trusting in the effectiveness of the tamper evident sticker.</li>
<li>Since November 2013, Casascius no longer sells these coins, although there are many in existence sold before that point.</li>
</ul>

<p>The first point can be solved by using 2 factor authentication, so that the string that the manufacturer hides behind the sticker is useless without a password that is never shared with the manufacturer.</p>

<p>So what you require is possible, although sidestepping the blockchain does introduce trust in the tamper evident nature of whatever method you use to conceal the private key. If the value stored by this method is sufficiently small per item to make the level of trust acceptable, then this may not be a problem.</p>

<h2>Tamper evident method without the physical form</h2>

<p>If you are looking to use this approach without the physical form, then I can't see a way of keeping ownership to just a single person without either a decentralised system that is effectively a parallel version of the block chain, or a centralised system where you have to place trust in those running it.</p>

<p>The solution to this problem of trust <em>is</em> the block chain - the public distributed ledger. If you want to avoid using the block chain, then you are going to have to live with the trust problem unless you can invent something new.</p>

<h2>Anonymity</h2>

<p>If the underlying reason for asking this question is that you want to conduct transactions anonymously, there are a variety of ways of doing this which you can learn about by browsing the <a href="/questions/tagged/anonymity" class="post-tag" title="show questions tagged &#39;anonymity&#39;" rel="tag">anonymity</a> tag.</p>

CC BY-SA 3.0
2015-10-08T19:33:06.123Z
yes that is exactly what the idea is. From my understanding you would have to have 3rd party to generate and encode these "digital envelopes". Trust is an issue if it was generated by a centralized system. But what if we piggy backed on top of another blockchain to do this? That blockchain in itself would have to generate these public/private keys in a distributed manner without ever keeping a copy of the private key at all. Say if a decentralized network distributed the generation of these keys among 100 computers, it would work technically. thoughts?
Patoshi パトシ
CC BY-SA 3.0
2015-10-08T21:24:05.923Z
That sounds interesting enough to post as a separate question...
trichoplax is on Codidact now
CC BY-SA 3.0
2015-10-08T19:00:47.310Z
2015-10-08T19:00:47.310Z
trichoplax is on Codidact now
<p>Is there a service where it generates a BTC address with public/private key, but no one knows it until someone pays a fee to reveal it? The idea is basically, some script or some other decentralized system will generate a btc private key, then encrypt it somehow. And in order to decrypt the encoded private key, a certain fee has to be paid. But the public key is exposed publicly.</p>

<p>I guess the idea is akin to generating a btc paper wallet private key, and then putting a few bitcoins in it. Then seal it inside a tamper proof envelope and then display the public key on the outside of the envelope. Now you can give this envelope to anyone physically without it showing on the blockchain. </p>

<p>But is there a service like this?</p>

CC BY-SA 3.0
2015-10-12T17:30:29.403Z
david, trichoplax explains it well below.
Patoshi パトシ
CC BY-SA 3.0
2016-02-08T22:10:12.133Z
I think you ask about trading the pubkeys offline like normal banknotes with added ability to claim it. I believe this is impossible because anybody can duplicate the pubkey so funds reciever needs to consult the blockchain to know token is unclaimed
Anlhord Smithson
CC BY-SA 3.0
2015-10-06T00:40:16.773Z
If you punch "paper wallet bitcoin" into your favorite search engine, you will find lots of services that download code to your browser to generate and print private keys and corresponding addresses.
David Schwartz
CC BY-SA 3.0
2015-10-06T00:42:48.353Z
yea but i want a program to generate the private key without even myself knowing or anyone else. Not even the computer that just generated it. And the only way to unlock it is by doing something. Is this considered a smart contract?
Patoshi パトシ
CC BY-SA 3.0
2015-10-06T00:52:58.410Z
What do you mean by "doing something"?
David Schwartz
<private-key><privacy><public-key><services>
Is there a service where you can generate public/private keys without anyone knowing? Like a tamperproof digital envelope
Patoshi パトシ
# Is there a service where you can generate public/private keys without anyone knowing? Like a tamperproof digital envelope

(Asked by: username_0 on 2015-10-05)

Is there a service where it generates a BTC address with public/private key, but no one knows it until someone pays a fee to reveal it? The idea is basically, some script or some other decentralized system will generate a btc private key, then encrypt it somehow. And in order to decrypt the encoded private key, a certain fee has to be paid. But the public key is exposed publicly.

I guess the idea is akin to generating a btc paper wallet private key, and then putting a few bitcoins in it. Then seal it inside a tamper proof envelope and then display the public key on the outside of the envelope. Now you can give this envelope to anyone physically without it showing on the blockchain.

But is there a service like this?

**Tags:** private-key, privacy, public-key, services

> **Comments:**
> **username_2**: If you punch "paper wallet bitcoin" into your favorite search engine, you will find lots of services that download code to your browser to generate and print private keys and corresponding addresses.  
> **username_0**: yea but i want a program to generate the private key without even myself knowing or anyone else. Not even the computer that just generated it. And the only way to unlock it is by doing something. Is this considered a smart contract?  
> **username_2**: What do you mean by "doing something"?  
> **username_0**: username_2, username_3 explains it well below.  
> **username_1**: I think you ask about trading the pubkeys offline like normal banknotes with added ability to claim it. I believe this is impossible because anybody can duplicate the pubkey so funds reciever needs to consult the blockchain to know token is unclaimed  

---

## 1 answers

### Answer by username_3 on 2015-10-08. Score: 0 | Accepted answer

From what you describe, I'm guessing that what you are looking for is something like [Casascius coins](https://www.casascius.com/). These display the public key but conceal the private key behind a tamper evident holographic sticker. This means that when you pass a physical coin to someone, they know that you don't have the private key, so they are the sole owner of the bitcoins at that address.

If this is what you are looking for, there are a few problems to bear in mind:

* The manufacturer of the coins puts the private key behind the sticker, so you are trusting that they did not also keep a record of the private key.
* You are trusting in the effectiveness of the tamper evident sticker.
* Since November 2013, Casascius no longer sells these coins, although there are many in existence sold before that point.

The first point can be solved by using 2 factor authentication, so that the string that the manufacturer hides behind the sticker is useless without a password that is never shared with the manufacturer.

So what you require is possible, although sidestepping the blockchain does introduce trust in the tamper evident nature of whatever method you use to conceal the private key. If the value stored by this method is sufficiently small per item to make the level of trust acceptable, then this may not be a problem.

## Tamper evident method without the physical form

If you are looking to use this approach without the physical form, then I can't see a way of keeping ownership to just a single person without either a decentralised system that is effectively a parallel version of the block chain, or a centralised system where you have to place trust in those running it.

The solution to this problem of trust *is* the block chain - the public distributed ledger. If you want to avoid using the block chain, then you are going to have to live with the trust problem unless you can invent something new.

## Anonymity

If the underlying reason for asking this question is that you want to conduct transactions anonymously, there are a variety of ways of doing this which you can learn about by browsing the [anonymity](/questions/tagged/anonymity "show questions tagged 'anonymity'") tag.

> **Comments:**
> **username_0**: yes that is exactly what the idea is. From my understanding you would have to have 3rd party to generate and encode these "digital envelopes". Trust is an issue if it was generated by a centralized system. But what if we piggy backed on top of another blockchain to do this? That blockchain in itself would have to generate these public/private keys in a distributed manner without ever keeping a copy of the private key at all. Say if a decentralized network distributed the generation of these keys among 100 computers, it would work technically. thoughts?  
> **username_3**: That sounds interesting enough to post as a separate question...  

---

