242 solidity之偽隨機數

2021-09-10 19:44:35 字數 670 閱讀 6085

solidity之偽隨機數

我們怎麼獲取乙個隨機的uint?

ethereum內部有乙個雜湊函式keccak256

它用了sha3版本

乙個雜湊函式基本上就是把乙個字串轉換為乙個

256位的16進製制數字

字串的微小變化也會引起雜湊資料極大的變化

這個在ethereum中有很多的應用

我們現在用它來創造乙個偽隨機數

其實在區塊鏈中產生乙個隨機數乙個很難的問題

我們這裡使用的方法實際上並不安全

但是如果我們只是用來做一些簡單的功能

那麼這樣做其實可以滿足我們的需要

再說一下型別轉換

例如uint8 a = 5;

uint b = 6;

如果我們這樣寫

uint8 c = a * b;

這樣是會報錯的

因為a*b返回的是uint,而不是uint8

所以我們需要進行型別轉換

uint8 c = a * (uint8)b;

現在我們來寫簡單的生成偽隨機數的方法

uint modulus = 10**16;

function _generaterandom(string _str) private view returns (uint)

opencv之偽色彩

opencv之偽色彩 引數 src 源影象 灰度圖或彩色圖 cv 8uc1 or cv 8uc3 dst 在源影象上進行色彩對映後的結果影象。colormap 提供的色彩圖 值。例子 import cv2 偽色彩 顯示影象 cv2.imshow input img cv2.imshow dst co...

css之偽元素

其他w3school文件 css 偽元素用於向某些選擇器設定特殊效果。我們看到有幾個偽元素的使用例子 可以通過這個屬性設定文字第一行的特殊效果,比如一段文字的第一行為紅色,其他為黑色。如果不通過這個方式來實現,就比較麻煩。因為螢幕適配的原因,你可能不能確定哪些文字屬於第一行 和first line ...

makefile之偽目標

偽目標的目的不是根據依賴關係生成某個目標,而是為了執行某種任務 clean rm o 通過 make clean來使用目標小結 1.因為我們並不是生成clean這個檔案,因此 偽目標 並不是乙個檔案,只是乙個標籤。2.由於 偽目標 不是檔案,所以 make 無法生成它的依賴關係和決定它是否要執行,因...