This repository has been archived on 2024-07-22. You can view files and clone it, but cannot push or open issues or pull requests.
2020-06-02 10:24:53 -07:00
|
|
|
# frozen_string_literal: true
|
2023-02-19 21:58:28 -08:00
|
|
|
|
2020-06-02 10:24:53 -07:00
|
|
|
# == Schema Information
|
|
|
|
#
|
|
|
|
# Table name: one_time_keys
|
|
|
|
#
|
|
|
|
# id :bigint(8) not null, primary key
|
|
|
|
# device_id :bigint(8)
|
|
|
|
# key_id :string default(""), not null
|
|
|
|
# key :text default(""), not null
|
|
|
|
# signature :text default(""), not null
|
|
|
|
# created_at :datetime not null
|
|
|
|
# updated_at :datetime not null
|
|
|
|
#
|
|
|
|
|
|
|
|
class OneTimeKey < ApplicationRecord
|
|
|
|
belongs_to :device
|
|
|
|
|
|
|
|
validates :key_id, :key, :signature, presence: true
|
|
|
|
validates :key, ed25519_key: true
|
|
|
|
validates :signature, ed25519_signature: { message: :key, verify_key: ->(one_time_key) { one_time_key.device.fingerprint_key } }
|
|
|
|
end
|