对于uos目前只能安装商店的感慨,强制安装除外

jie1018 / 2020-5-16 21:35
浏览: 702 / 回复: 26
 
 
个人觉得,在软件不足的情况下,更应该是系统支持,而不是让用户自己打开开发模式
 
 

UOS系列教程:账户、钱包、权限更改

2019.04.02 11:24:48字数 1,068阅读 481

首先,假设您有一个UOS账号,以及安装了UOS节点程序的电脑。如果没有
官方申请:请下载“优壹号” app  
节点安装(ubuntu 16.04):
1, wget ftp://tools.ulord.one/UOS_Mainnet.tar.gz
2,tar -zxvf~/UOS_Mainnet.tar.gz
3,chmod +x ~/uos/noduos ~/uos/cluos ~/uos/kuosd ~/uos/install.sh ~/uos/uninstall.sh ~/uos/mongodb/bin/mongod
4,sudo ~/uos/install.sh
uos的账户是由数字1-5,小写字母a-z组成,普通用户的长度为12位,小于12位的账户叫做“短号”,需要竞拍获得。

一:账户组成

我们使用命令行查看一个UOS链上的任一账户,比如“aaaaaaaaaaaa”

cluos -u https://rpc3.uosio.org:8080 get account aaaaaaaaaaaa
created: 2019-01-29T08:13:31.000
permissions: owner 1: 1 UOS5RCcMUXDKNk9YQDq2CNxG68LF9zRYVn21o7s2TWb7BNFnJDzUk
active 1: 1 UOS7wHa9AjtNuys1PquLbEBGgnvLHig4YyspDwdW1wtJfWWMGBdVo
memory: quota: 7.37 KiB
used: 3.756 KiB
net bandwidth: staked: 0.1000 UOS (total stake delegated from account to self)delegated: 0.0000 UOS
(total staked delegated to account from others)
used: 129
bytesavailable: 67.11 MiB
limit: 67.11 MiB
cpu bandwidth:staked: 0.1000 UOS (total stake delegated from account to self)delegated: 0.0000 UOS
(total staked delegated to account from others)
used: 2.271 ms
available: 14.26 sec
limit: 14.26 sec
UOS balances:
liquid: 7.1000 UOS
staked: 0.2000 UOS
unstaking: 0.0000
UOStotal: 7.3000 UOS
producers:staked: 0.2000 UOS<not voted>
total: 0.0000 UOS

可以看到账户的许多信息,包含:
1,账户"aaaaaaaaaaaa"创建与2019年1月29日
2,账户owner权限的公钥是“UOS5RCcMUXDKNk9YQDq2CNxG68LF9zRYVn21o7s2TWb7BNFnJDzUk”
3,账户active权限的公钥是“UOS7wHa9AjtNuys1PquLbEBGgnvLHig4YyspDwdW1wtJfWWMGBdVo” 4,账户的可用余额为7.1UOS 
5,账户的cpu以及net的抵押数量接下来,将用此账号创建一个新的账号,并且更改它的权限。

二,钱包

命令行运行:

kuosd

大约5s,关闭此进程"ctrl+c",这时会在用户目录生成uosio-wallet文件夹,这个文件夹就是钱包文件夹。一个钱包文件夹里头可以包含多个钱包,现在我们在文件夹里面创建两个钱包,钱包的名称分别为testera,testerb。

cluos wallet create -n testera --to-console
Creating wallet: testera Save password to use in the future to unlock this wallet. Without password imported keys will not be retrievable.
"PW5KMVW7A9LUnfxe1YPf2krHcRMbrVGBQZUzVHoBbke7rLkLZDbZB" cluos wallet create -n testerb --to-console
Creating wallet: testerb Save password to use in the future to unlock this wallet. Without password imported keys will not be retrievable.
"PW5JCBNM89tUkfbimh5foFAf3XFnhRdffohK6wcDVYMCfh9jJ1gQH"

"-n"是名称的意思,这样,我们就在钱包文件夹创建了两个钱包:”testera“和”testerb“。可以使用如下命令查看:

cluos wallet listWallets:
[ "testera *" ,
"testerb *" ]

可以看到,钱包文件夹里面已经包含名为”testera“和名为”testerb“的钱包了。这个时候,钱包文件夹里面是没有任何私钥的,仅仅定义了两个名称而已。想要使用账户“aaaaaaaaaaaa”创建一个新的账户,必须把账户的私钥导入到钱包里面,这样程序才能使用钱包里面私钥授权“aaaaaaaaaaaa”创建账户的行为。“*”代表钱包未被锁定。
将账户“aaaaaaaaaaaa”的owner权限的私钥导入钱包testerb中,其中“xxxxxxx”代表私钥

cluos wallet import -n testerb --private-key xxxxxxxx

查看testerb钱包中收藏的公私钥对:

cluos wallet private_keys -n testerb

然后输入上文中testerb钱包的密码:

PW5JCBNM89tUkfbimh5foFAf3XFnhRdffohK6wcDVYMCfh9jJ1gQH(可以粘贴一次性输入)

结果如下:

password: [[    "UOS5RCcMUXDKNk9YQDq2CNxG68LF9zRYVn21o7s2TWb7BNFnJDzUk",    "xxxxxxxx"  ]]

这样我们就可以对账号"aaaaaaaaaaaa"进行操作了。假如在某些过程中,钱包提示锁定。可以用如下命令解锁:

cluos wallet unlock -n testerb --password PW5JCBNM89tUkfbimh5foFAf3XFnhRdffohK6wcDVYMCfh9jJ1gQH

三,创建账户

先生成一个公私钥对,然后用记事本保存下来:

cluos create key --to-consolePrivate key: xxxxxxxxxxxxPublic key: UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE

然后搜遍脑袋想了一个名字“baodaotulong”,心想这个不错,武林至尊,宝刀屠龙。然后在链上查看是否账号已经存在:

cluos -u https://rpc3.uosio.org:8080 get account baodaotulong

返回一个错误,确实不存在。。。。然后调用命令,因为上文中导入的是owner公钥,故签名时使用的owner权限,即@owner。owner权限是向下包含active权限的。

cluos -u https://rpc3.uosio.org:8080 system newaccount aaaaaaaaaaaa --transfer baodaotulong UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE --stake-net "0.1000 UOS" --stake-cpu "0.1000 UOS" --buy-ram-kbytes 4 -p aaaaaaaaaaaa@owner

这条命令解释为:aaaaaaaaaaaa创建一个baodaotulong的账号,该账号的owner公钥为UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE,active公钥为:UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE,aaaaaaaaaaaa出钱给其购买4K内存,抵押0.1UOS的cpu和net。
这样,baodaotulong就创建成功了。要使用baodaotulong这个账号,同样也需要他的私钥导入钱包。

cluos wallet import -n testerb --private-key xxxxxxxx

同样可以查看testerb钱包,这样testerb钱包中就拥有了两个公私钥对:

cluos wallet private_keys -n testerbpassword: [[    "UOS5AmeHzY6jreyPLKFaAj4hPSETSNvx2afC4K8w5pydPXDLkSVUE",    "xxxxxxxx"  ],[    "UOS5RCcMUXDKNk9YQDq2CNxG68LF9zRYVn21o7s2TWb7BNFnJDzUk",    "xxxxxxxxx"  ]]

接下来可以卖出一部分内存试试能否操作baodaotulong账户了:

cluos -u  https://rpc3.uosio.org:8080 system sellram baodaotulong 500 -p baodaotulong@active
executed transaction: 4c55852428b3910411d51cccdf8dc3fbaae3c1c2d091b9583f30b740674fe475
112 bytes 1544 us
# uosio <= uosio::sellram {"account":"baodaotulong","bytes":500}# uosio.token <= uosio.token::transfer {"from":"uosio.ram","to":"baodaotulong","quantity":"1.3717 UOS","memo":"sell ram"}
# uosio.ram <= uosio.token::transfer {"from":"uosio.ram","to":"baodaotulong","quantity":"1.3717 UOS","memo":"sell ram"}
# baodaotulong <= uosio.token::transfer {"from":"uosio.ram","to":"baodaotulong","quantity":"1.3717 UOS","memo":"sell ram"}
# uosio.token <= uosio.token::transfer {"from":"baodaotulong","to":"uosio.ramfee","quantity":"0.0069 UOS","memo":"sell ram fee"}
# baodaotulong <= uosio.token::transfer {"from":"baodaotulong","to":"uosio.ramfee","quantity":"0.0069 UOS","memo":"sell ram fee"}
# uosio.ramfee <= uosio.token::transfer {"from":"baodaotulong","to":"uosio.ramfee","quantity":"0.0069 UOS","memo":"sell ram fee"}
# uosio <= uosio::payfee {"payer":"baodaotulong","net_usage":112,"virtule_net_limit":2097152000,"act_account":"uosio","act_na...warn 2019-03-29T08:57:45.730 thread-0 main.cpp:487
print_resuwarning: transaction executed locally, but may not be confirmed by the network yet

四,更改权限

武侠迷小明出了1000个UOS想跟我购买这个baodaotulong的这个账户。小明向我提供了一个公钥UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y。于是,我运行如下命令,更改了baodaotulong的权限,这样我就不再拥有baodaotulong的控制权了。

cluos -u https://rpc3.uosio.org:8080  set account permission baodaotulong active '{"threshold":1,"keys":[{"key":"UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y","weight":1}],"accounts":[]}' owner -p baodaotulong@owner
cluos -u https://rpc3.uosio.org:8080  set account permission baodaotulong owner '{"threshold":1,"keys":[{"key":"UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y","weight":1}],"accounts":[]}' -p baodaotulong@owner

小明查看了baodaotulong的账户:

cluos -u https://rpc3.uosio.org:8080 get account baodaotulong
created: 2019-03-29T08:46:56.000
permissions: owner 1: 1 UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y
     active 1: 1 UOS5A4sYXU6SA5kyKjbu76r9xapgrzotjhLEgPSZzDzMBJpw1559Y
     .....

小明发现账户的owner和active权限都由自己提供的公钥组成,愉快的通过优壹号转给了我1000UOS

 
 
uos不是商店下载的,系统提示没有数字签名,不让安装,这点不太友好,毕竟有些软件商店没有。额外安装可以提升使用效果,及客户满意度。win哪儿下载的都让用,对于win激不激活有什么关系了。
也许是为了保护客户信息,可是什么都没有用的了,那再流畅的速度还不是一个漂亮的花瓶。

对于uos目前只能安装商店的感慨,强制安装除外的更多相关文章

  1. 安装anaconda python时只能安装到默认文件夹&& 安装提示文件夹以存在问题

    这个问题困扰了两次,网上说可以,我就是不行,查了半天没找到解决方法, 后来装在C盘里, 之后在百度知道(ID:幸福999快乐)发现解决办法后来才发现问题. 在安装的时候,要安装的目标文件夹不需要先在安 ...

  2. CentOS6.3 编译安装LAMP(2):编译安装 Apache2.2.25

    所需源码包: /usr/local/src/Apache-2.2.25/httpd-2.2.25.tar.gz 编译安装 Apache2.2.25 #切换到源码目录 cd /usr/local/src ...

  3. SOA_环境安装系列1_Oracle SOA Suite11g安装总括(案例)

    2015-01-01 Created By BaoXinjian

  4. 【安装操作系统】VMware 中安装 Redhat 5

    引言 已有一台 Windows XP 家用机,安装 Linux 虚拟机,一不小心就会走弯路,因此本文提供一些入门级的经验来帮助你躲开歧途. 欢迎来到 lovickie 的博客 http://www.c ...

  5. 【转】Win7系统下安装Ubuntu12.04(EasyBCD硬盘安装)--不错

    原文网址:http://blog.csdn.net/lengbuleng1107/article/details/14532177 需要的东西有: 1,ubuntu系统镜像,下载地址:http://w ...

  6. C# 制作Java +Mysql+Tomcat 环境安装程序,一键式安装

    原文:C# 制作Java +Mysql+Tomcat 环境安装程序,一键式安装 要求: JDK.Mysql.Tomcat三者制作成一个安装包, 不能单独安装,安装过程不显示三者的界面, 安装完成要配置 ...

  7. ubuntu14.04安装、NVIDIA显卡驱动安装及CUDA8.0、Cudnn5.1的环境搭建

    安装环境:hp-Z440工作站.64位Ubuntu14.04(64位Ubuntu16.04).Cuda8.0.Cudnn5.1.Nvidia GeForce GT 705.Tesla K40c 本文可 ...

  8. CentOS7下安装Gitlab社区版【安装步骤、IP改域名、修改端口】

    这两天一直在给公司的服务器配置Gitlab(10.5.4).过程很是痛苦,所以把过程记录一下. 1.安装CentOS7 从官网上下载了最新版CentOS-7-x86_64-DVD-1708.iso.用 ...

  9. 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装

    Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...

随机推荐

  1. 全网最详细的Linux命令系列-ls命令

    Linux开始必须要会的命令当属ls,在日常工作中用到ls命令时的频率是很多的,作为一个初学者,可能我只会或者顶多ls -l两种用法.但是ls其实是一个非常实用的指令,ls命令就是list的缩写,ls ...

  2. [SpringCloud教程]3. Eureka服务注册中心集成

    新微服务项目多半采用Nacos作为服务注册与发现中心,但是旧项目可能使用Eureka.zookeeper.Consul.Nacos作为服务注册中心. 新项目建议使用Nacos作为服务注册中心 Spri ...

  3. C#异步编程由浅入深(二)Async/Await的作用.

      考虑到直接讲实现一个类Task库思维有点跳跃,所以本节主要讲解Async/Await的本质作用(解决了什么问题),以及Async/Await的工作原理.实现一个类Task的库则放在后面讲.首先回顾 ...

  4. 【Python学习笔记】-虚拟环境virtualenv

    在开发python应用程序的时候,系统安装的python3只有一个版本:3.4.所有的第三方的包都回被pip安装到python3的site-packages目录下. 如果我们要要同时开发多个应用程序, ...

  5. [开源]制作docker镜像不依赖linux和Docker环境

    背景 最近群友们经常反馈docker镜像制作起来有点麻烦,我开源的antdeploy工具虽然可以制作镜像但是必须有一个提前:有一台安装好docker的linux服务器.因为大家开发环境基本上都是win ...

  6. linux系统调用号查询(pwn)

    做pwn题时遇到程序使用了64位系统调用号:59和15,这里做一下记录 在线查询链接:https://syscalls.w3challs.com/ 分为32位和64位,链接中还有arm.mips等架构 ...

  7. 我与Git的那些破事(上)--代码管理

    1. Git是什么? 作为一名程序猿,我相信大家都或多或少接触过git--分布式版本控制软件. 有人说,它是目前世界上最先进的分布式版本控制系统,我想说,是否最先进不知道,但确实好用,实用. 作为一款 ...

  8. prometheus入门介绍及相关组件、原理讲解

    1:介绍 Prometheus 是由 SoundCloud 开源监控告警解决方案. prometheus是由谷歌研发的一款开源的监控软件,目前已经被云计算本地基金会托管,是继k8s托管的第二个项目. ...

  9. GridSearchCV 参数

    GridSearchCV(estimator, param_grid, scoring=None, fit_params=None, n_jobs=1, iid=True, refit=True, c ...

  10. 06- web兼容性测试与web兼容性测试工具

    web兼容性概述 定义:软件兼容性测试是指检查软件之间能否正确地进行交互和共享信息.随着用户对来自各种类型软件之间共享数据能力和充分利用空间同时执行多个程序能力的要求,测试软件之间能否协作变得越来越重 ...