Сгенерировать UUID в Golang
UUID означает универсальный уникальный идентификатор. Это 128-битное значение, используемое для фонда уникальной идентификации (OSF).
UUID обеспечивают уникальность, поскольку они генерируют идентификаторы на основе времени, движения курсора, системного оборудования (MAC и т. д.) и т. д.
В результате очень вероятно, что UUID уникальны в пространстве и времени, и их очень трудно угадать, поскольку они основаны на множестве факторов. Пакет UUID в этой статье создает и проверяет UUID на основе RFC 4122 и DCE 1.1: Службы аутентификации и безопасности.
Преимущества UUID:
- Его можно использовать как общую утилиту для создания уникального случайного идентификатора.
- Его также можно использовать в криптографии и приложениях для хеширования.
- Это полезно для генерации случайных документов, адресов и т. д.
Сгенерировать UUID в Golang
Перед генерацией UUID в первую очередь мы инициализируем проект go. Итак, создайте пустой каталог для нового проекта. Инициализировать с помощью команды инициализации: go mod init имя_проекта. Это создает файл go.mod.
Пример:
go mod init gfg
Создайте новый файл main.go.
Выход:
Результирующая структура каталогов:
Код go можно добавить в этот файл main.go и запустить с помощью следующей команды:
go run main.go
Существует два способа создания UUID:
- Использование встроенной библиотеки — os/exec
- Использование пакета uuid от Google — github.com/google/uuid
Теперь мы узнаем, как сгенерировать UUID в Golang, используя следующие методы:
Сгенерировать UUID с помощью os/exec
Чтобы сгенерировать UUID с помощью os/exec, выполните следующие действия:
Шаг 1: Импортируйте пакет os/exec для утилиты UUID.
Шаг 2: Выполните команду uuidgen через импортированный пакет os/exec.
Шаг 3: Проверьте наличие ошибок при генерации.
Шаг 4: Распечатайте сгенерированный UUID.
Имя файла: main.go
Go
package main import ( "fmt" "log" "os/exec" ) func main() { newUUID, err := exec.Command( "uuidgen" ).Output() if err != nil { log.Fatal(err) } fmt.Println( "Generated UUID:" ) fmt.Printf( "%s" , newUUID) } |
Выход:
Создать пакет UUID google/uuid
Чтобы сгенерировать UUID с помощью пакета google/uuid, выполните следующие действия:
Шаг 1: Установите пакет google/uuid с помощью следующей команды:
go get github.com/google/uuid
Это также создает файл go.sum и обновляет файл go.mod, добавляя сведения о пакете.
Шаг 2: импортируйте пакет github.com/google/uuid для утилиты uuid.
Шаг 3: Используйте функцию uuid.New импортированного пакета uuid.
Шаг 4: Распечатайте сгенерированный UUID
Имя файла: main.go
Go
package main import ( "fmt" "github.com/google/uuid" ) func main() { id := uuid.New() fmt.Println( "Generated UUID:" ) fmt.Println(id.String()) } |
Выход: