質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

解決済

6回答

1650閲覧

ログインシステムのアイディア

RYOHEI1009

総合スコア45

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

2クリップ

投稿2017/08/03 06:33

アプリ開発である部屋にいる人だけにしかログイン出来ないようなログインシステムを開発中です。

そこである部屋でしかログイン出来ないようにするためにはというところで悩んでいます。

考えてるのはBluetoothかGPSを使おうと思っています。

他にアイディアある方御教授お願

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答6

0

Googlecastのゲストモードが採用している方法ですが、次の二つがあります。

  1. 画面にPINコードを表示する。

表示用のモニターが必要ですが、その部屋に居る人しかPINコードは確認できませんので、窓もドアも閉まっていれば、外に漏れる心配はほとんどありません。

  1. PINコードが含まれる人には聞こえない特殊な音声で認証する。

スピーカー(対応できない物もある)が必要ですが、スピーカーで音量も調整しやすいため、電波のように壁を越えないようにするのも簡単です。

GPSは精度が問題になりますし、端末をハックすれば騙せます。WiFiやBluetoothなどの電波はうまく強さを調整しないと部屋から漏れる可能性があります。

なお、上二つはGoogle等が特許を取っている可能性もありますので、採用の際は特許の有無も調べてからのほうがいいかと思います。

投稿2017/08/03 22:33

raccy

総合スコア21735

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/08/03 22:51

音で認証って、たまに見ますね。 可聴域でもイイ気がします。 問題はデバイス側の精度ですね。。。
guest

0

ベストアンサー

実装方法のアイデアの前に、別の視点の考え方も記載しておきます。

要件の再確認

習い事の出席確認システム
アプリ開発
ログインシステム
ある部屋でしかログイン出来ない
BluetoothかGPSを使おう
ICカードが配られており
個人のデバイスで行おう

⇒上記の状況を踏まえると、
「ある部屋でしかログイン出来ない」というのは、本当に必要ですか?
自ら望んで(?)習い事をしている方が、
その部屋にいないでログインする場合、
どんな対策を取ってもイタチごっこな気もします。

システムにあまり詳しくない方がそういうことを期待したり、
システム屋として、こういう制限を入れたいというお気持ちは分かりますが。

実装方法のアイデアの考え方(例)

色々なアイデアを実現できる環境(?)に居らっしゃるようなので、
「システムを使わない場合、どう運用するか」を考えてみると、
また違った視点のアイデアがでると思います。

システムを使わないで実現しようとすると、以下のような方法でしょうか。

例1)別の講師が講義中に1人1人チェックする。
例2)講師がその場で名前を呼んで1人1人点呼する。
例3)1人1人に出席票を配り、名前を書いてもらい回収する。
例4)(人数が多ければ)座った後に、名前の入った表を配り、回覧・チェックする。
例5)その部屋に入ってすぐ、名前の入った表とペンを用意して入室時にチェックする。
例6)その他

ここで考えるのは、「どれが一番すぐれているか」ではなく、
「紙で行った場合の講師の考え方」でどういうシステム化をするのが良いのか、
見えてきそうです。

ちなみに、例1に抜け道はない!と思われるかもしれませんが、
「別の講師が不正を働いたら」の場合でNGですが、不正の可能性が一番低いです。

「要件の重要度」と「紙で行った場合の講師の考え方」を掛け合わせると、
システム化の内容はおのずと答えが出てくる気もします。

実装方法の案

案1)ほぼ完全に防ぐ場合

⇒その部屋に専用タブレット等を設置、顔認証。
顔認証後、サーバーにその人がその部屋で認証した情報を保持。
生徒の端末でログインすると、ID/PWだけでなく、さらに顔認証済であれば、ログイン成功。

※専用タブレットが上記の例1の別の講師にあたります。

案2)より簡単に、でも簡単な不正は防ぎたい。

⇒RYOHEI1009さんの考えるBluetooth,GPSで良いと思います。
たとえ、隣の部屋や違う階でログインするくらいなら、
もうその部屋に行くでしょう。

案3)もっと簡単に

⇒システム上「ある部屋でしかログイン出来ない」という条件を外し、
運用上、「ある部屋でしかログイン出来ない」とする。

そもそも、その場でしかログインできないアプリ、というのは、
「個人のデバイス」である必要がどれだけあるのか。

また、実際はどこでもログイン実装にして、
運用回避で、「その場でログインしてください」と伝えて、
その場以外でログインするような人は、
生徒としてお金だけ払ってもらうかやめてもらう。

案4)そもそも・・・

⇒ICカードを配っているのであれば、カードリーダーを部屋に設置して、
カードリーダーに通したら、ICカードのコードをサーバーに送る。
アプリでログインすると、ID/PWだけでなく、さらに「そのIDに紐づくICカードをカードリーダーに通した情報」があれば、ログイン成功。

案5)他には・・・?

⇒上記の例2)~例6)について、システム化した場合など、
考えると面白いかもしれません。

講義の途中で、その部屋にいる生徒全員でふるふる機能とか
需要ないでしょうけど、そんな光景を見てみたいですね(笑)。

投稿2017/08/04 06:31

編集2017/08/04 06:32
tomari_perform

総合スコア760

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RYOHEI1009

2017/08/04 06:47

ご回答ありがとうございます! かなり参考になりました! ふるふるは面白そうですね思いつきませんでした! 1度顔認証の実施して試用期間で試したいと思います!
guest

0

アプリ化するんなら、毎日変わる QRコード と併用とか面白そう。

投稿2017/08/03 09:09

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RYOHEI1009

2017/08/03 09:36

コメントありがとうございます! それ面白そうです!! 仮に講師のデバイスに導入すると生徒側が一斉に教卓に向かうため渋滞が起こりそうです????
takito

2017/08/04 00:24

いいアイデアだなと思ったのですが、QRコードを写真撮って来ていない人に転送し、その来ていない人が出席したかのように認証する、といったこともできそうですね 回避策は・・・思いつきません、、、 それが問題になるかどうかはわかりませんが「できる」ということの認識はしておいた方がよさそうです
退会済みユーザー

退会済みユーザー

2017/08/04 00:38

ブレストっぽかったので、興味本位の回答ですw 要件次第で、縛ることも緩めることもできるかと。 単純なものだと、10秒で更新して、30秒以内でないと出席にしないとか、token の取扱ノウハウである程度回避できる気がします。
guest

0

そこである部屋でしかログイン出来ないようにするためにはというところで悩んでいます。

部屋に無線ルーターを置いて、フィルタリングし易い特定の範囲内のIPアドレスを配布するようにする。
スマホはWi-Fiに繋いだ後にサービスにログインさせれば解決。

他は難易度上がるばっかりで実用性はそこまで高くならないだろうし、難しいんじゃないかなぁ…

投稿2017/08/03 09:08

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RYOHEI1009

2017/08/03 09:16

ありがとうございます! Wi-Fi関連のアイディアは思いつきませんでした! Wi-Fiって範囲って決められるのですか? またBluetoothは範囲設定は難しいでしょうか?
miyabi-sun

2017/08/03 09:47

>Wi-Fiって範囲って決められるのですか? >またBluetoothは範囲設定は難しいでしょうか? どっちも不可能 ただし、Bluetoothは電波が微弱で鉄筋コンクリート抜けられないし、Wi-FiもBluetoothより強いとはいえ、やはり電波は弱く鉄筋コンクリート越しには抜けられない。 安価な電波の強くないモデルを買う事で厳密な範囲指定は出来ないものの簡易的な指定は出来ると思う。
guest

0

「習い事の出席確認システム」というお話しから、会社の出退勤と同じように考えてはいかがでしょう?

タイムカードをガチャンと押すあれです

個人のスマホを利用するなら、NFCタグを教室に設置してスマホをそこにかざせばアプリを通してサーバに誰が何時に部屋に入ったか/出たかを記録できます

それだと全員がスマホを持っていないといけないので、逆に教室にスマホを設置(先生のスマホでもいいかも?)して交通系カードをタイムカード代わりに読み取らせる、という方法もあります
この方法は実際の企業でも出退勤管理で使われています

以上ご参考になりましたら

投稿2017/08/03 08:58

takito

総合スコア3111

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RYOHEI1009

2017/08/03 09:01

すみません、肝心なところ抜けてました。 個人のデバイスで行おうとしていました泣 習い事の教室には一人一人ICカードが配られており、個人のデバイスのFeliCaでログインできるなシステムを作ろうとしています
takito

2017/08/03 09:08

ああ、なるほど 配られているICカードを使ってログインする仕組みが正常に動作する場所を制限したい、ということですね それなら・・・先生のICカードを先に読ませて一定時間以内に生徒のICカードを読ませる手順にするってのはどうでしょう?
RYOHEI1009

2017/08/03 09:14

それ、面白いです! ありがとうございます! 一つの案として検討してみます!
guest

0

やりたいことの目的によっても回答は変わってくると思います。
何かの利便性を上げるために使用したいということでしたら、GPSでもBluetoothでも良いと思います。

ただし、セキュリティ面が目的だとすると
例えば、GPSということであれば、位置情報なので位置偽装されればログイン可能な条件が整います。

ある部屋が知っている人しか入ることが出来ないのであれば、その部屋のWIFIに接続可能な人しかアクセス出来ないログイン画面を用意するのも良いかもしれません。(WIFI接続が第三者にされてしまうとアウトですが、そこは適切な設定と運用でカバーするとしか言えないですが)

参考になれば幸いです。

投稿2017/08/03 06:58

YasuhiroMiyake

総合スコア1336

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

RYOHEI1009

2017/08/03 07:43

御教授ありがとうございます! 習い事の出席確認システムを作ろうと思ってまして、その教室がビルで行われているのですが、位置情報の場合仮に1階の待合室からもログイン可能となってしまうので悩んでました… Bluetoothもまた教室の外からログイン出来てしまうのではないかと、壁でBluetoothの電波は際切ることが出来るのならBluetoothを採用したいのですが、、知識がそこまでないです泣 パスワードを講師が入力し、生徒側がパスワードを入力するという方法を選んでましたが、効率が悪いと思いこの選択は外しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問