珍惜羽毛 / STEEM区块链忠实的记录你的操作 / 获得共同操作账户的真实操作者

View this thread on: d.buzz | hive.blog | peakd.com | ecency.com
·@oflyhigh·
0.000 HBD
珍惜羽毛 / STEEM区块链忠实的记录你的操作 / 获得共同操作账户的真实操作者
![20060624180712967.jpg](https://steemitimages.com/DQmcSv3Yg4y5Gdpd9uAkGBjq3BGDNrHFQjytSWHeXwFwFRH/20060624180712967.jpg)

# STEEM区块链是个大帐本

昨天的帖子 [📌 如何避免辛苦创作的帖子丢失,100%解决哦 🎃](https://steemit.com/cn/@oflyhigh/100)有描述一种情况,帖子发表后编辑,依旧可以通过程序或者工具找到以前的记录。

其实区块链好好比一个大帐本,每一时刻的所有操作都会被忠实记录,并且无法回头修改之前的操作。颇有种时光一去不复返的感觉。

所以,在STEEMIT上的诸位,一定要爱惜自己的羽毛,你做的一切,都有档可查。一旦你做了什么不好的事情,被列入黑名单,那么再想洗白就比较难了。当然,放弃当前的ID,投胎成为一个崭新的ID,重新开始一段STEEMIT之旅,也未尝不是一个好办法,但是切记不要再做不好的事情啦。

# 可以通过各种方法查记录

扯了这么一大段,有些扯远了。
额,查文章的历史纪录,上文说过,大家都学会了吗?

查操作记录,或多或少也提及了,方法很简单用steemd.com加ID即可
`http://steemd.com/@your_id`
把your_id 换成你自己的,或者你要查的人

当然了,还有各种编程的方法查记录
比如说: `get_account_history`

# 一种复杂的情况

但是除了这些还有一种更复杂的情况
我在前文: [STEEMIT高级操作之:如何多人共同维护一个公共STEEMIT账户(ID)](https://steemit.com/cn/@oflyhigh/steemit-steemit-id) 描述的一种多人共同操作一个公共账户的方法。

并且我已@laodr 为例,将我们几位茶东都设置了@laodr 的使用权限
比如说我用laodr账户和我的私钥登陆就可以操作laodr账户发帖、投票等等

那么问题来了,除了操作者本人清楚或者操作者本人声明外,如何知道是谁在操作这个账户?
假设一种恶劣的(不可能发生的情况): laodr 账户发表了脏话等不当言论,那么是哪个茶东干的?一定要揪出来,打PP。

在之前另一篇文章 [通过事务ID(transaction id) 获取事务(transaction) / Database API:  get_transaction](https://steemit.com/cn-programming/@oflyhigh/id-transaction-id-transaction-database-api-gettransaction) , 提到了通过事务ID获取事务的可能性。这里我们进一步延展,通过取到的事务判断是谁在操作。

为此我特意创建了个公钥字典`pk_dict`
其中用户的公钥是key, 用户名是value.


并编写了个简单的函数:
```
def get_real_operator(steem, block_num, tx_id):

        block = steem.get_block(block_num)
        index = block['transaction_ids'].index(tx_id)
        tx =  block['transactions'][index]

        real_operator = 'Unknown'
        tx_obj = transactions.SignedTransaction(**tx)

        for pk_str in pk_dict.keys():
                pk = PublicKey(pk_str)
                pks = [pk]
                try:
                        tx_obj.verify(pks, "STEEM")
                except:
                        continue

                real_operator = pk_dict[pk_str]
                break

        return real_operator, tx

```

以 @laodr 今天的发帖操作为例:
block 为:13174106, transaction_id为:67d64c97dfc631edaa6f264abfa4b04796856b16
套入我上边的程序中,算出的结果如下:
![](https://steemitimages.com/DQmRYQvhcphzwRYm6FbkdwyByhu8JKoq9gHkbx9KTGv1CVF/image.png)

所以,**茶东们,你们做的操作我都可以看到哦,千万不要干坏事。**
本文只是从技术上分析了取得真实操作者的可行性。 我们的茶东都是好人,不会干坏事的:)

顺便推荐一下今天的老道茶馆,我是今天的店小二哦:
* [🍵 LAODR Tea House / 老道茶館 🍵今日话题: 业余爱好 / Hobbies (附重要声明)](https://steemit.com/laodr-teahouse/@laodr/laodr-tea-house-hobbies)
欢迎大家去喝酒,哦,不对,去喝茶

----
感谢阅读
水平有限,欢迎大家一起讨论,如有谬误,烦请指正

欢迎upvote、resteem以及 following me @oflyhigh 😎
请将我设置成为你的见证人投票代理, 访问 https://steemit.com/~witnesses
 ![](https://steemitimages.com/DQmQhMNaw3fXpHsDM6Jx1bNi732DySj8JQefq9jjQENcosJ/image.png)
👍 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,