Sign inSign up

artifriends/saseul-network

By artifriends

•Updated 2 months ago

All right reserved ArtiFriends Inc.

Image
Databases & storage
13

10K+

artifriends/saseul-network repository overview

SASEUL is not open source and all rights and patents of SASEUL are owned by ArtiFriends.
ArtiFriends will take strong legal action against illegal theft.

🕐 Last updated: 2026-07-28 00:00 UTC



⁠SASEUL Official Announcement


⁠SASEUL Documentation


⁠Installation Preparation

You need to accurately set the time on your computer(server) configuration.
If the time is set significantly different from the average network time, it may not function properly.


⁠Image Tags

TagDescription
latestFull image including the CUDA runtime. Required for GPU mining.
liteNode only, without the CUDA runtime. Recommended if you do not use GPU mining.
arm64arm64 build.

⁠Quick Start (AWS Linux 2023)

⁠Standard

$ sudo dnf install -y docker
$ sudo systemctl enable --now docker
$ sudo docker pull artifriends/saseul-network:lite
$ sudo mkdir /var/saseul-data
$ sudo docker run -d --init --name saseul-node -p 80:80 -v /var/saseul-data:/var/saseul/saseul-network/data --entrypoint /bin/saseul-init artifriends/saseul-network:lite

$ sudo docker exec -it saseul-node saseul-install

  Please enter your endpoint (host:port) [anonymous]:
  > <YOUR_ENDPOINT>

  Please enter your miner address [primary wallet]:
  > (leave empty to use default wallet)

# Start node
$ sudo docker exec -it saseul-node saseul-script start

# View logs
$ sudo docker exec -it saseul-node saseul-script log -f

⁠GPU Mining

GPU mining requires NVIDIA driver 580 or later.

$ sudo dnf update -y
$ sudo dnf install -y kernel-devel docker gcc make dkms
$ sudo dnf config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/amzn2023/x86_64/cuda-amzn2023.repo
$ sudo dnf install -y nvidia-driver
$ curl -s -L https://nvidia.github.io/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo | sudo tee /etc/yum.repos.d/nvidia-container-toolkit.repo
$ sudo dnf install -y nvidia-container-toolkit nvidia-driver-cuda
$ sudo systemctl enable --now docker
$ sudo nvidia-ctk runtime configure --runtime=docker
$ sudo systemctl restart docker
$ sudo reboot

# After reboot, verify GPU is recognized
$ nvidia-smi

# If GPU info (e.g. NVIDIA A10G) is displayed, host setup is complete.

$ sudo docker pull artifriends/saseul-network:latest
$ sudo mkdir /var/saseul-data
$ sudo docker run -d --init --name saseul-node --gpus all -p 80:80 -v /var/saseul-data:/var/saseul/saseul-network/data --entrypoint /bin/saseul-init artifriends/saseul-network:latest

$ sudo docker exec -it saseul-node saseul-install

  Please enter your endpoint (host:port) [anonymous]:
  > <YOUR_ENDPOINT>

  Please enter your miner address [primary wallet]:
  > (leave empty to use default wallet)

# Start node
$ sudo docker exec -it saseul-node saseul-script start

# View logs
$ sudo docker exec -it saseul-node saseul-script log -f

# After block sync is complete:
# Enable external mining & Start mining
$ sudo docker exec -it saseul-node saseul-script mining external on
$ sudo docker exec -it saseul-node saseul-script mining start
$ sudo docker exec -it saseul-node saseul-script mining gpu start

# Check GPU mining status
$ sudo docker exec -it saseul-node saseul-script mining gpu check

# Follow GPU miner logs
$ sudo docker exec -it saseul-node saseul-script log -m -f

If your driver is older than 580, use the CUDA 12 build instead.

$ sudo docker pull artifriends/saseul-network:2.2.0.5-cuda12.3.2

⁠Update

⚠️ Migration Notice (2.2.0.2 → 2.2.0.3)

If you are upgrading from 2.2.0.2, complete the update steps below first, then run the permission migration at the bottom of this section.

$ sudo docker exec -it saseul-node saseul-script stop
$ sudo docker exec -it saseul-node bash

# Inside the container
$ find /var/saseul/saseul-network/data -type d -exec chmod 755 {} \;
$ find /var/saseul/saseul-network/data -type f -exec chmod 644 {} \;
$ find /var/saseul/saseul-network/data/bunch -type d -exec chmod 775 {} \;
$ exit

✅ To update your node, follow the steps below.

# If you mounted the data folder (/var/saseul-data)
$ sudo docker stop saseul-node
$ sudo docker rm saseul-node
$ sudo docker pull artifriends/saseul-network:latest

# Standard
$ sudo docker run -d --init --name saseul-node -p 80:80 -v /var/saseul-data:/var/saseul/saseul-network/data --entrypoint /bin/saseul-init artifriends/saseul-network:latest

# GPU
$ sudo docker run -d --init --name saseul-node --gpus all -p 80:80 -v /var/saseul-data:/var/saseul/saseul-network/data --entrypoint /bin/saseul-init artifriends/saseul-network:latest

# After update
$ sudo docker exec -it saseul-node saseul-install
$ sudo docker exec -it saseul-node saseul-script start

# Check node status
$ sudo docker exec -it saseul-node saseul-script info
$ sudo docker exec -it saseul-node saseul-script log -f

Note: If you encounter sync issues after update, see the Troubleshooting section below.


⁠Troubleshooting

⁠Sync stuck (entered wrong fork)

If block sync stops progressing, the node may have entered a fork other than the network's best branch.

$ sudo docker exec -it saseul-node saseul-script stop
$ sudo docker exec -it saseul-node saseul-script tracker reset
$ sudo docker exec -it saseul-node saseul-script data reset --tree
$ sudo docker exec -it saseul-node saseul-script start
  • tracker reset: Refresh the tracker peer list to avoid syncing from peers on a malicious fork.
  • data reset --tree: Rebuild tree data from existing block data to return to the correct branch.

⁠Entered wrong fork too deeply

If the resource block info shows the node has gone too deep into a wrong fork, rewind to a known good height.

$ sudo docker exec -it saseul-node saseul-script stop
$ sudo docker exec -it saseul-node saseul-script tracker reset
$ sudo docker exec -it saseul-node saseul-script data rewind -n <target_height>
$ sudo docker exec -it saseul-node saseul-script start
  • data rewind -n <target_height>: Rewind chain state to the specified block height (this is an absolute height, not a relative count).

Note: You can check your node's current sync status at http://<your_endpoint>/chaininfo. More convenient fork handling methods will be available in a future update.




⁠Release Notes

⁠v.2.2.0.5 [2026. 07. 28]
  • Improved recovery from malicious branches. Nodes now return to the network's best branch faster.
  • Blocks that break chain continuity are no longer accepted from peers.
  • Updated system packages.
  • Minor bug fixes.

⁠v.2.2.0.4 [2026. 06. 19]
  • Fixed a bug where blocks could not be generated under certain branch conditions.
  • Miner efficiency doubled.
  • Minor bug fixes.

⁠v.2.2.0.3 [2026. 02. 23]
  • Reduced network traffic by 50–80% between updated nodes
  • Added transaction query API
  • Added inspect API for contract-bound status data
  • Added sendtransaction support via wallet and script
  • Fixed permission errors occurring in certain situations
  • Minor bug fixes

⁠v.2.2.0.2 [2026. 02. 16]
  • Minor bug fixes

⁠v.2.2.0.2 [2026. 02. 13]
  • Added backward compatibility layer for legacy block data
  • Added experimental GPU miner
  • Improved sync performance and fork selection stability
  • Further incremental patches to follow

⁠v.2.1.9.6 [2023. 07. 20]
  • Hard fork was proceed at 625,000 resource block.
  • If the update has not been carried out since v.2.1.7.6, there might be a problem with synchronization.
  • Mining difficulty problem has been fixed.

⁠v.2.1.7.6 [2023. 04. 02]
  • Added some script
  • The issue of excessive network traffic has been fixed.
  • Now you can set ports other than port 80.
  • Fixed synchronizing issues, stabilization issues.
  • Check your own node status using terminal and send transaction or register smart contract.
  • https://docs.saseul.com/⁠

⁠v.2.1.6.2 [2022. 10. 19]
  • Fixed synchronizing issues, stabilization issues.

⁠v.2.1.4.3 [2022. 09. 25]
  • Now supports arm64.

⁠v.2.1.3 [2022. 09. 12]
  • There were some bugs in 2.1.2, though not a critical.
  • If you were using the 2.0.x version, you should proceed with the 2.1.2 patching method first.
  • Especially, be aware that errors may occur if you do not enter the setenv and reset commands.

⁠v.2.1.2 [2022. 09. 09]
  • There are some important changes to this patch. We recommend updating to version 2.1.2 as soon as possible.
  • SASEUL with version 2.1.2 is automatically forked at main block number 150,000. It is no longer compatible with version 2.0.x.
  • If the fork proceeds normally after main block number 150,000, a patch will proceed immediately after which the SASEUL token issuance function will be added.
  • The token issuance cost will be set at 1SL per 1byte in proportion to the contract capacity, and it is expected to initially cost about 10,000SL.
  • SASEUL Testnet will be released shortly.

⁠v.2.1.0 (unstable) [2022. 08. 24]
  • It has been modified to operate stably even in low-spec nodes.
  • We will proceed with the hard fork to improve the overall network speed after fully testing the 2.1 version by next week.
  • We hope that this hard fork will be completed well, and we are preparing to release the roadmap.
  • If you are not a developer, we recommend updating after the hard fork.

⁠v.2.0.8 [2022. 07. 18]
  • node stabilization.

⁠v.2.0.7 Hotfix [2022. 07. 15]
  • In this patch, mining problem which was caused by intermittent synchronization stopping has been fixed.
  • This patch is not an essential patch. If there is a continuous problem with the node, please proceed as below.

⁠v.2.0.7 [2022. 07. 14]
  • The problem of synchronization stopping if the Internet is temporarily disconnected has been fixed.

⁠v.2.0.6 [2022. 07. 08]
  • From now on, you can run ForceSync on specific hosts.

⁠v.2.0.4 [2022. 06. 30]
  • The bug that miners were incorrectly selected has been fixed.

⁠v.2.0.3 [2022. 06. 18]
  • Synchronization bug fixed.
  • You can mount the data folder from now on.

⁠v.2.0.2 [2022. 06. 02]
  • The bug that does not update outdated hypothesis has been fixed.

⁠v2.0.1 [2022. 06. 01]
  • The block standard time determination algorithm has been modified.







⁠Archive

⁠Read Me (SASEUL-Network Mainnet)
  • The source code is continuously being modified.
  • If there is a source code modification, you must restart the node. (It will be automated later, but no deadline has been set yet.)
  • If you want to know the modification notice, join the telegram. (https://t.me/saseul_notice⁠)
  • Block explorer URL: https://explorer.saseul.com⁠
  • ArtiFriends doesn't guarantee any problems.
⁠Wallet 'Guardee' Release Renewal (22.06.23)
  • SASEUL wallet Guardee was released on Google Android Market on June 13rd.
  • Guardee is released on iOS Market on June 23rd.
  • You can use Guardee through Chrome explorer.
  • Guardee is currently connected to SASEUL and Ethereum, and will be connected to bitcoin in the future.
  • Guardee is a decentralized wallet with DID and supports various functions such as wallet creation, balance checking, resource verification, and remittance.
  • URL: https://guardee.io⁠

  • You can use the AWS Instance to install nodes.
  • ArtiFriends recommend 4 Core, 8GB RAM, 256GB storage(In AWS, r5.xlarge).
  • You can also use your own PC (Windows, Mac) to install nodes.

⁠Pre-Installation

⁠Case1. Using AWS
  • You need to set up your instance SSH, HTTP, HTTPS.
  • SASEUL Network uses port 22, 443, 80.

⁠Case2. Using own PC
  • You have to change your router settings.
  • First, check the internal IP address.
  • Second, access to your router admin page.
  • Use the Port Forwarding setting to set the external and internal port to 80.
  • The above method is to set a web server through a router.
  • Details will be uploaded soon.

⁠Installation

⁠If you want to set up a new node:
$ docker systemctl start
$ mkdir /var/saseul-data
$ docker pull artifriends/saseul-network
$ docker run -d --init --name saseul-node -p 80:80 -v /var/saseul-data:/var/saseul/saseul-network/data artifriends/saseul-network
$ docker exec -i saseul-node saseul-script SetEnv
  (all y)

$ docker exec -i saseul-node saseul-script Start
$ docker exec -i saseul-node saseul-script StartMining
$ docker exec -i saseul-node saseul-script GetEnv
  Node private key:  ...
  Node public key:  ...
  Node address: ...
  (..)
  • You must back up your node account information to recover the node later.
  • Node Private Key is your personal information that is very important, and ArtiFriends can't help you if you lose it.
  • You can check your balance or wallet status using this node private key through Guardee wallet.
  • Guardee URL: https://guardee.io⁠

⁠If you want to restore a old node:
$ docker stop saseul-node
$ docker rm saseul-node
$ docker pull artifriends/saseul-network
$ docker run -d --init --name saseul-node -p 80:80 -v /var/saseul-data:/var/saseul/saseul-network/data artifriends/saseul-network
$ docker exec -i saseul-node saseul-script SetEnv
   Do you want to set up the env file? [y/n] 
   y

   Do you keep a full ledger? [y/n] 
   y

   Do you want to make new random node account? [y/n] 
   y

   Do you want to make new random peer account? [y/n] 
   y

   Do you want the mining address to be the same as the address of the node? [y/n] 
   n

   Please enter address.
   [Enter the mining address] <----- (The address you want to get mining result. Usually your used wallet address.)

$ docker exec -i saseul-node saseul-script Start
$ docker exec -i saseul-node saseul-script StartMining
$ docker exec -i saseul-node saseul-script GetEnv
  Node private key:  ...
  Node public key:  ...
  Node address: ...
  (..)
  • You must back up your node account information to recover the node later.

⁠Mining (Resource to SL)

  • In SASEUL Network, once someone succeed in mining, the node or node owner (depends on one's setting) gets Resource.
  • Resource is paid by the network as a compensation concept.
  • When a node succeeds in mining, that node acquires a right to make main blocks which are outcomes of Tx processing.
  • It means that even if mining is successful, no compensation can be obtained if Tx of the Main Chain does not occur.
  • Resource is totally different from SL Coin.
  • Nodes have to send transaction called Refine to convert Resource to SL.
  • You can check your Resource on the Explorer website. (https://explorer.saseul.com⁠)
  • You can convert your Resource to SL using Refine contract.

⁠Legacy (2.1.x)

⁠Installation Preparation

You need to accurately set the time on your computer(server) configuration.
If the time is set significantly different from the average network time, it may not function properly.

⁠if use Amazon Linux 2, still works amazon-linux-extras. Follow below guide.
$ sudo yum update -y
$ sudo amazon-linux-extras install docker -y
$ sudo usermod -a -G docker ec2-user
$ exit

(reconnect)

$ sudo systemctl start docker
⁠If use Amazon Linux 2023 AMI or latest version, follow below guide.
$ sudo su
$ yum install docker -y
$ usermod -a -G docker ec2-user
$ exit

(reconnect)

$ sudo systemctl start docker

⁠Quick Start

$ docker pull artifriends/saseul-network:latest
$ mkdir /var/saseul-data

If the message 'mkdir: cannot create directory '/var/saseul-data': Permission denied' is printed,
$ sudo su
$ mkdir /var/saseul-data
$ exit

$ chown -Rf <user:group> /var/saseul-data  # If you are using AWS, <user:group> is ec2-user:ec2-user

$ docker run -d --init --name saseul-node -p 80:80 -v /var/saseul-data:/var/saseul/saseul-network/data artifriends/saseul-network:latest
$ docker exec -i saseul-node saseul-script SetEnv
$ docker exec -i saseul-node saseul-install
$ docker exec -i saseul-node saseul-script Start
$ docker exec -i saseul-node saseul-script StartMining
⁠If there's an issue, (ex, Issue with not getting the latest block synced)
$ docker exec -i saseul-node saseul-script Restart
$ docker exec -i saseul-node saseul-script StartMining
⁠If sync speed is too slow, You can sync force as follows:
$ docker exec -i saseul-node saseul-script Stop
$ docker exec -i saseul-node saseul-script Reset

... reset ...

$ docker exec -i saseul-node saseul-script ForceSync --peer main.saseul.net
$ docker exec -i saseul-node saseul-script Start
$ docker exec -i saseul-node saseul-script Log

⁠v.2.1.9.6 [2023. 07. 20]
  • Hard fork was proceed at 625,000 resource block.
  • If the update has not been carried out since v.2.1.7.6, there might be a problem with synchronization.
  • Mining difficulty problem has been fixed.

$ docker stop saseul-node
$ docker rm saseul-node
$ docker pull artifriends/saseul-network:latest
$ docker run -d --init --name saseul-node -p 80:80 -v /var/saseul-data:/var/saseul/saseul-network/data artifriends/saseul-network:latest
$ docker exec -i saseul-node saseul-script restart
$ docker exec -i saseul-node saseul-script startmining

If you encounter issues with data synchronization, please reset the data using the commands below.

$ docker exec -i saseul-node saseul-script reset
$ docker exec -i saseul-node saseul-script forcesync -p main.saseul.net

Instead of main.saseul.net, you may use another regional IP address
Europe: dolcetto.saseul.net
Asia: blanc.saseul.net
⁠v.2.1.7.6 [2023. 04. 02]
  • Added some script
  • The issue of excessive network traffic has been fixed.
  • Now you can set ports other than port 80.
  • Fixed synchronizing issues, stabilization issues.
  • Check your own node status using terminal and send transaction or register smart contract.
  • https://docs.saseul.com/⁠

1) Previously stored block data in an external path /var/saseul-data

$ docker exec -i saseul-node saseul-script stop
$ docker stop saseul-node
$ docker rm saseul-node

$ docker pull artifriends/saseul-network:latest
$ docker run -d --init --name saseul-node -p 80:80 -v /var/saseul-data:/var/saseul/saseul-network/data artifriends/saseul-network:latest

$ docker exec -i saseul-node saseul-install
$ docker exec -i saseul-node saseul-script restart
$ docker exec -i saseul-node saseul-script startmining

2) Previously stored block data in an internal path of docker

$ docker exec -i saseul-node saseul-script stop
$ docker stop saseul-node
$ docker rm saseul-node

$ docker pull artifriends/saseul-network:latest
$ docker run -d --init --name saseul-node -p 80:80 artifriends/saseul-network:latest

$ docker exec -i saseul-node saseul-script setenv
... 
$ docker exec -i saseul-node saseul-install 
$ docker exec -i saseul-node saseul-script restart
$ docker exec -i saseul-node saseul-script startmining

After patch, if you want to sync full block data immediately, use ForceSync

$ docker exec -i saseul-node saseul-script reset

or 

$ docker exec -i saseul-node saseul-script rewindblock
$ docker exec -i saseul-node saseul-script forcesync --peer main.saseul.net

(The address main.saseul.net does not matter if you enter the address of any node with the latest block data)

$ docker exec -i saseul-node saseul-script start
$ docker exec -i saseul-node saseul-script log

(Check your block data bundling completed)

$ docker exec -i saseul-node saseul-script startmining

Tag summary

Content type

Image

Digest

sha256:6f9486f1c…

Size

4.8 GB

Last updated

2 months ago

docker pull artifriends/saseul-network