Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Allow password length over 71 chars

オープン
#798 コメント 6 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 2 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
38/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
go

調査の方向性

auth/password/password.go から始め、次に GOTIFY_DEFAULTUSER_PASS と GOTIFY_DATABASE_CONNECTION について、database/database.go および app.go からの使用箇所を追跡します。利用可能なパスワードハッシュ化のアプローチを比較し、既存のパスワードをどのように扱うかを定義します。報告された起動時の panic なしに、71 文字を超えるパスワードを使用できるようになれば完了です。

索引モデルが issue の本文から書いたものです。

説明

a:feature in:server

Is your feature request related to a problem? Please describe.
When setting environment variable GOTIFY_DEFAULTUSER_PASS or the password in GOTIFY_DATABASE_CONNECTION to a string longer than 71 chars, I get the following error in my journalctl:

<DATE> <HOSTNAME> systemd[1]: Started podman-gotify.service.
<DATE> <HOSTNAME> <...>[8313]: <...>
<DATE> <HOSTNAME> <...>[8329]: Starting Gotify version 2.6.3@2025-04-27-09:10:38
<DATE> <HOSTNAME> <...>[8329]: panic: bcrypt: password length exceeds 72 bytes
<DATE> <HOSTNAME> <...>[8329]:
<DATE> <HOSTNAME> <...>[8329]: goroutine 1 [running]:
<DATE> <HOSTNAME> <...>[8329]: github.com/gotify/server/v2/auth/password.CreatePassword(...)
<DATE> <HOSTNAME> <...>[8329]:         /src/gotify/auth/password/password.go:9
<DATE> <HOSTNAME> <...>[8329]: github.com/gotify/server/v2/database.New(<...>)
<DATE> <HOSTNAME> <...>[8329]:         /src/gotify/database/database.go:58 +0x469
<DATE> <HOSTNAME> <...>[8329]: main.main()
<DATE> <HOSTNAME> <...>[8329]:         /src/gotify/app.go:42 +0x236
<DATE> <HOSTNAME> <...>[8339]: 2025-05-18 13:23:14.006036461 +0000 UTC m=+0.048855570 container died <...> (image=docker.io/gotify/server:2, name=<...>, PODMAN_SYSTEMD_UNIT=p>
<DATE> <HOSTNAME> <...>[8339]: 2025-05-18 13:23:14.218830403 +0000 UTC m=+0.261649572 container remove <...> (image=docker.io/gotify/server:2, name=<...>, pod_id=<...>>
<DATE> <HOSTNAME> systemd[1]: podman-gotify.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
<DATE> <HOSTNAME> systemd[1]: podman-gotify.service: Failed with result 'exit-code'.
<DATE> <HOSTNAME> systemd[1]: podman-gotify.service: Consumed 610ms CPU time, 19.5M memory peak, 13.3M written to disk.
<DATE> <HOSTNAME> systemd[1]: podman-gotify.service: Scheduled restart job, restart counter is at 5.

This is a thread that describes the problem in detail.

Describe the solution you'd like
I'm not familiar with go and haven't used any of these libraries, but after some research it was often suggested to use argon2id package.

Describe alternatives you've considered

  • Implement an environemnt variable/config option to let the user choose the algorithm.
  • Add note to config that passwords are limited to 71 UTF-8 chars
主要言語
Go
スター
16k
フォーク
891
平均マージ
2日 11時間
マージ済み PR(30日)
6

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

gotify/server のほかの issue

gotify/server の issue をすべて見る

似ている issue

Go の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。