<p>While those names come from the way they are named in the code, changing the naming in the code would not solve the problem. The problem is a social one, not a technical one.</p>
<p>Even if those fields were renamed, many people would continue to refer to them as scriptPubKey and scriptSig simply due to habits. There would additionally be a lot of old documentation, discussions, forum posts, emails, etc. that cannot be changed which refer to those fields as scriptPubKey and scriptSig. Inevitably newcomers will come across this terminology even if everyone were to start using new terminology.</p>
<p>The best that we can do is to start using new terminology wherever possible. For example, I try to use input and output script in all of my writing rather than scriptPubKey and scriptSig. They do not need to be renamed in the code in order to be referred to using different words.</p>

CC BY-SA 4.0
2022-05-22T16:19:37.987Z
I don't see a clear distinction between social and technical aspects. The code is a social artifact. "many people would continue to refer to them as scriptPubKey and scriptSig simply due to habits" And that's expected and totally fine. There would a period (possibly a long one) when pepole would just be aware that there used to be and old name, and now a new name.
dpc.pw
CC BY-SA 4.0
2022-05-22T16:19:46.140Z
"The best that we can do is to start using new terminology wherever possible. For example, I try to use input and output script in all of my writing rather than scriptPubKey and scriptSig."

I'm happy to hear that I'm not the only one that would like this to happen, but my main problem is - which term do we use exactly? I was considering "lock script" and "unlock script", "input script" and "output script"?

And how do we form a certain amount of consensus around it?
dpc.pw
CC BY-SA 4.0
2022-05-22T15:40:59.857Z
2022-05-22T15:40:59.857Z
Ava Chow
<p>I realize that this is how Satoshi named them and there was some reasoning behind these names, but even after years of using them, I find them weird and confusing, especially when e.g. explaining them to new people.</p>
<p>AFAIU, we could all just pick and start using new names like &quot;output script&quot; and &quot;input script&quot;, and gradually rename them in source codes of Bitcoin Core, various tools and so on.</p>
<p>Is this feasible? Is there any technical reason no to? Did anyone ever tried? How would I go about it? A BIP?</p>

<script><bitcoin-core-development><terminology><input-script>
Reasons not to rename scriptPubKey and scriptSig to something more intuitive?
dpc.pw
# Reasons not to rename scriptPubKey and scriptSig to something more intuitive?

(Asked by: username_0 on 2022-05-22)

I realize that this is how Satoshi named them and there was some reasoning behind these names, but even after years of using them, I find them weird and confusing, especially when e.g. explaining them to new people.

AFAIU, we could all just pick and start using new names like "output script" and "input script", and gradually rename them in source codes of Bitcoin Core, various tools and so on.

Is this feasible? Is there any technical reason no to? Did anyone ever tried? How would I go about it? A BIP?

**Tags:** script, bitcoin-core-development, terminology, input-script


---

## 1 answers

### Answer by username_1 on 2022-05-22. Score: 2

While those names come from the way they are named in the code, changing the naming in the code would not solve the problem. The problem is a social one, not a technical one.

Even if those fields were renamed, many people would continue to refer to them as scriptPubKey and scriptSig simply due to habits. There would additionally be a lot of old documentation, discussions, forum posts, emails, etc. that cannot be changed which refer to those fields as scriptPubKey and scriptSig. Inevitably newcomers will come across this terminology even if everyone were to start using new terminology.

The best that we can do is to start using new terminology wherever possible. For example, I try to use input and output script in all of my writing rather than scriptPubKey and scriptSig. They do not need to be renamed in the code in order to be referred to using different words.

> **Comments:**
> **username_0**: I don't see a clear distinction between social and technical aspects. The code is a social artifact. "many people would continue to refer to them as scriptPubKey and scriptSig simply due to habits" And that's expected and totally fine. There would a period (possibly a long one) when pepole would just be aware that there used to be and old name, and now a new name.  
> **username_0**: "The best that we can do is to start using new terminology wherever possible. For example, I try to use input and output script in all of my writing rather than scriptPubKey and scriptSig."  I'm happy to hear that I'm not the only one that would like this to happen, but my main problem is - which term do we use exactly? I was considering "lock script" and "unlock script", "input script" and "output script"?  And how do we form a certain amount of consensus around it?  

---

