スレ立てるまでもない質問はここで 148匹目 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
質問する前にGoogleで検索しましょう。 http://www.google.com/
プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。
ウイルス、ハッキング・クラッキングを求めるような発言は禁止です。
Javascript は Web 制作板、CGI は Web プログラミング板へ。
業界談義、愚痴はプログラマ板へどうぞ。
ゲーム関係の話題はゲーム製作板へどうぞ。
ネタ、板とは関係の無い話題はご遠慮ください。
前スレ
スレ立てるまでもない質問はここで 147匹目
http://echo.2ch.net/test/read.cgi/tech/1490436082/ ロジックについて質問です。
A〜Zまでの列があり、その列の中でさらに1〜13までの番号を振ってあります
参考図:https://i.imgur.com/kT89KNc.png
青く塗ってあるところだけ通れるルートなのですが、たとえばA列からB列まで行く場合、一度上まで出てからB列とC列の間を通らないといけないことになります
反対にB列からC列の場合上に出る必要がなく直線で行けます
自分が解決できないのがA列からB列に行く場合とB列からC列に行く場合の違いの判別の仕方がわからないのです
起点と終点の距離を出したいのですがこれでは出すことができません
こういう場合どのように判別したら良いんでしょうか?何か良い案ありましたらお願いします プログラムがパスワードが必要な場合。
メモリー上に置くとメモリーを盗み見されないようにするには
暗号化すればいいのですが、結局使うときには複合するから
結局盗み見されるじゃないですか。
それならば盗み見されないようにするにはどうしたらいいですか? >>130
プログラムでは正しいパスワードをハッシュ関数に通した結果@を覚えておくようにする
プログラム実行上で入力されたパスワードをハッシュ関数に通し、その結果と@とを照合する
ハッシュ関数の結果からパスワードを逆算することは不可能 >>132
それはログインするときのの話だな
>>132のようなのものはサーバー側でパスワードを保存しておく必要はない
↓例えばこんな感じ
クライアント(パスワードを知ってる) → パスワード送信 → サーバー(ハッシュ化パスワードを覚えてる)
サーバー側は送信されたパスワードをハッシュ化したものと、覚えているハッシュ化したパスワードを比較してる
だけど単純なこの方法だと、サーバーはパスワードを覚えていないだけで
パスワードを送信しているので、結局メモリー上に一瞬とは言えパスワードが存在する
それを防ぐのがチャレンジ/レスポンス認証ってやつ。パスワードそのものを送らない仕組み
>>130
ただなパスワードマネージャーのようなソフトはどうしようもない
クライアント(パスワードを知ってる) → パスワード管理ソフト → パスワード送信 → サーバー(ハッシュ化パスワードを覚えてる)
パスワードは暗号化していても復号化してから送信しなければいけない
その時メモリを読み取れる可能性はある。有名なパスワードマネージャーは
その対策をしていると思うがどうやってるかは知らないw
最終的にはOSのパスワード管理機能が最強ってことになると思うんだが脆弱性見つかってるからな。
例えパスワードが頭にしかなくても入力している時には読み取れるだろうし、パスワードを使ってる限り
メモリ上のどこにもないってことはないだろうな >>133
いや、完全に間違えてる。
もうtelnetのような時代遅れのプロトコルなんて
使わないだろ >>134
telnetの話はしていない
だからtelnetだと思い込んだお前が勘違いしてる phpで作ったシステム(しょぼいCMSのようなもの)を有料販売または有料でレンタル的なことをしたいんですが、改変や二次利用されないための方法ってなにがありますかね?
契約書等ではなくプログラム自体を許可した人だけにしか使われないようにしたいです。 >>136
プログラム自体に制限を掛ける方法は、リバースエンジニアリングを回避するのは原理的に無理だと思う
データで勝負する方向は可能かな? >>139
昔はやったビルドシステム
今はnpm runを使う 一部ではそんなことも言われていたけど俺は結局gulpに戻った。package.jsonだけじゃやっぱり無理がある。 makeは機種依存がある
例えばWindowsで使えない >>141
package.json = コマンド実行なんだけど
コマンド実行でできないことって何? >>143
え?Windows で普通に make つかってるけど… >>144
しばらく"config"とか駆使していろいろやってみたけど、package.jsonの記述がごちゃごちゃしていくのに
嫌気がさした。あとコマンドラインである以上環境依存が避けられないってところも。
もちろん、コマンドラインだから "node hoge.js" とすれば大抵のことができてしまうわけだけど、
そんなんするならgulpfile.jsでもいいかなと思い直した。 >>148
npm run(npm-scripts)への流れっていうのは、
コマンドから実行したいものは、必ずコマンドラインインターフェースが
ついてるからそれ使えばいいって発想だと思う。
例えばeslintだとeslintコマンドが存在するでしょ?
npm scriptsっていうのは、コマンドラインインターフェースが存在する物の
オプションを決め打ちにした簡単なラッパー
なので色々駆使する必要が有ることがよくわからない あとまあ知ってると思うけど、gruntとかglupの問題は、
本当に「使いたいもの」(例えばeslint)とgrunt/glupなどのビルドツールを
つなぐためのプラグインが必要になるって所だよね
大抵別開発者が作ってるから、「使いたいもの」がバージョンアップしても
すぐに対応されるとは限らない
コマンドラインインターフェースを直接使えば最新の機能がすぐに使える ビルド時にやりたいことに対して常に適切なコマンドが見つかるとは限らんからね。
運良く存在した場合でも、あるディレクトリ内の全部のファイルに対して処理するなんて
よくあるケースがワンライナーで書けなかったり。
このあいだ書いたちょっと複雑な処理だと、ビルド実行時にそのgitブランチとコミットの
情報を取得してファイルに埋め込むなんてのがあったな。
>>150
俺が一度gulpを捨てた理由はまさにそれ。たしかどっかのブログに唆されて。
で、また戻ってきたのは、そんなにいくつもプラグインを使わなくてもpackage.json直書き
よりは便利だと思い直したため。今ではほとんどgulp-execやベタのjsで済ましてる。 初めまして。初めてこちらを使わせていただきます。
もしも場所が間違っていたらすいません。
ただいま、マイコンmbed(F303K8)を用いてDanceDanceRevolutionのアケコンを自作しようとしています。
最終的にはStepmaniaというDDRのエミュレーションツールと共に使う予定です。
制作物の仕組みとしては以下となります。
1.圧力センサーを押すとmbedからシリアル通信でPC側に文字列が送られる
例 pc.putc('r');
2.pythonで制作したツールにてPC側でシリアル通信を受信。文字列に対応したキーを送信する。
例 pyautogui.keyDown('right')
ここで、pyautoguiやC#のSendkeyを用いてStepmaniaにキー送信を試みたところ、Stepmania側でキー送信を受け付けてくれませんでした。
どうにかしてキーボード入力かジョイスティック入力として送信を試みたいのですが、如何でしょうか。
よろしくお願いします。 DirectXはSendKeyに対応していないため、SendInputを使ったところできました。
ありがとうございました。 makeで良いんだが、なんで再発明したがるんだろうね。 >>136-137
よくあるのは、ドングルだろ。
ドングルを挿した時だけ、アプリが使える
>>139-151
make はプログラミング言語ではないから、
スコープ・クロージャがないから、プログラミングできない
Vagrant, Chef のRuby とか、Gradle のGroovy とか、
DSL を作りやすい言語が有利
今まで、Ruby では、Rake だったけど、
最近は、Thor を使う なんていうかな。
全体的に勘違いしてるような気がするが。
rubiestってみんなこうなの?
頭でっかちと言うか、道具に使われてると言うか。
DSLを作りやすいと言うより、作らないためにnpm scriptやらmakeやらに回帰してるんだがな。
作ってもどの道、収斂進化していって、同じようなものに落ち着くよ。 makeはそれ自体DSLなんだから、makeでrakeのような内部DSLができるかなんてのはナンセンスだわな。
まあそれはそれとして、いざという時に任意のロジックを記述できる内部DSLは便利ではある。
型に嵌めるからこそ理解しやすいというDSLの利点を多少損なうものではあるけれど。 A. 自分
↓
[B. AでもCでもない第三者が作ったモジュール]
↓
C. 本当に使いたいもの(ライブラリ等)
Aである自分はCを使いたいだけなのに、
間にあるBが存在しない or メンテナンスされない状態で
また修正するのも自作するのも大変な状態になって
Cが使えないことにアンチパターンとして名前をつけたいね
gruntとかgulpとかそういう状態にある。
ansibleとかterraformもこのパターンになってる。
またこのアンチパターンのもう一つのデメリットは無駄な知識を要求させること
AはCを使いたいだけなのに、Bの使い方を学ばないといけない。
使い方、記述の仕方が変わるだけでできることはC一緒 ちなみにね、>>158のパターンに近いようで違うもので
こういうパターンが有る
A. 自分
↓
[B. DirectX]
↓
C. 様々なハードウェア
これは一見似ているようだけど、本当に使いたいものが、BのDirectXになってる点で違う。
あるものを抽象化するような仕組みは>>158とは違うので勘違いしないように >>157
任意のロジックは任意のロジックを行うフェーズごと、ビルド用のスクリプトに切り分けてしまう方がいいと思うんだけど、流行り的には違うんだろうな。
微妙な移植する時にドツボにハマる事になると思うんよね…。
まぁ、rake使う時点で適切なバージョンのrakeを使っていて、rubyは完璧に動いてる、と言うのが前提なんだろうけど。
そうでない環境に持ってくときに、rakeごと作り直し、は悲しすぎるし、
rubyかrake(またはnodeとgulp)のバージョンを上げる時に無駄な苦労もしたくないからこそ中立的なビルドを保ちたいなぁ。 unityの質問です、2つのゲームを別々のプロジェクトで作って、スタート画面を作りゲーム1のボタンを押したら、ゲーム1がプレイできてゲーム2のボタンを押したら、ゲーム2がプレイできるようにしたいんですが ゲーム1のプロジェクトの方で、スタート画面とボタンを2つ作り、ゲーム1のボタンを押したらゲーム1が始まるのですが、ここからどうやればゲーム2のボタンを押したら、ゲーム2を始めることができるのか、わかりません、教えてください ゲーム1とゲーム2のインターフェースを共通化して、初期化とゲームループをフラグ変数で切り替えればいい。 たぶん、関連する複数のプロジェクトを、solution とかで、まとめるのだろう
その、solution 内で、異なるプロジェクトを実行する方法があるのだろう
この板ではなく、ゲーム製作技術板の、Unity のスレで聞いて >>164
ありがとうございます、そうしてみます! >>167
数学の本を読めばおのずと答えがわかるようになっています 同じプログラマとして、俺が昨日知った驚きの情報をスレ違いですが、聞いてください。
魚にカジキっているでしょ?あれ、感じで書くと梶木って書くらしいんですよ・・
でね、なぜかっていうと、昔の船は底の方に船の梶を取る梶木っていうのがあったらしいんですよ・・
でね、魚のカジキはあの尖った鼻みたいので、その梶木を裂いて穴を開けてしまうらしいんですよ・・。
それでね、カジキ(梶木)なんていう名前になったらしいんですよ・・、スゴくないですか?
あとね、タラバガニっているでしょ・・。アレはね感じで書くと、鱈場蟹って書くんですよ・・・(´・ω・`)
それがね、聞いてビックリ(・・;)! 文字通り、鱈(魚の鱈ね)がいるところでたくさん取れるから、そういう名前になったんだって(・・;)!
皆さん、こういうのって、スゴくないですか・・?本当によく出来ていると思いますよ・・・(´・ω・`) >>171 チョウザメだね!ググったらチョウザメ大きい(*^^*)
ちなみに、鮭の鼻の先端のグニュって曲がってるところはプロテオグリカンの塊なんだぞw MFC, Win32で、CaretとScrollWindowで現在ドハマリ中。
キャレットのサイズを好きなように変えたくて、
CreateSolidCaret, DestroyCaret, HideCaret, ShowCaret を自分としては
かなり慎重に行っているつもりなんだけど、ScrollWindow を行うと、
消えているはずのキャレットの場所に XOR 的な色反転矩形が出てしまう。
というか、::DestroyCaret または、::HideCaret するだけで、色反転矩形が
出る場合もあり、ここ半日ぐらいハマッてる。
ScrollWindowの直前は、必ず ::DestroyCaret して、直後に CreateSolidCaret
するようにしてみても駄目だ・・・。 2回目くらいの ScrollWindow で、
なぜか、昔の位置に色反転矩形が出る。
OnKillFocus で、DestroyCaret してみても駄目だった。
何もやっても駄目・・・。 自作の商用サービスで株価の情報を使用したいんですが
ヤフーファイナンスは利用規約で商用利用を禁止しているため取得できません
どのような方法株価情報を取得すればいいでしょうか?
(載せたい情報はランキングとか各銘柄の出来高とかです) 2chのdat取得したいんですが
dat取得するのにdatファイルがある場所
を指定するのに
http://hayabusa9.2ch.net/news/dat/1517168470.dat
これのurlでは取得できない
取得の仕方が書いてあるブログを見て作ってるんですけど情報が2009年の何です
datファイルの場所が変わったり
してるんでしょうか? ググると運営に許可なく開発、公開できなくなるというのが出てきました
おーぷんは取得できたんですけど
2chの場合では違うコードが取得されたんでdatを許可なく取得されないための対策ってことなんですかね... 今はdat取得にはAPIを使う必要がある
API呼び出しのためのキーは運営に発行してもらう
ソース非公開、広告掲示、とかいくつかの条件がある
まあ個人的理由でとるのはもう無理そう 1KB = 1000B
1KiB = 1024B
ってキモくない?
2進数世界の単位なんだから1KB = 1024Bでいいじゃん
国際度量衡総会か国際電気標準会議か知らないけどバカなの?頭文系なの? キロ - Wikipedia
キロ(kilo, 記号:k)は国際単位系 (SI) における接頭辞の一つで、基礎となる単位の10^3倍の量であることを示す。記号は小文字の「k」である。
1キログラム (kg) = 1000グラム (g)
1キロメートル (km) = 1000メートル (m)
1キロリットル (kL) = 1000リットル (L)
1キロワット (kW) = 1000ワット (W)
1キロジュール (kJ) = 1000ジュール (J)
1795年の当初のメートル法で定められた6つの接頭辞の一つである。
キロは、ギリシア語で1000を意味する χ?λιοι (khilioi) に由来する。
当時は、倍量の接頭辞はギリシャ語から、分量の接頭辞はラテン語から作成することとしていた。
そこで、ギリシャ語の単語をフランス語風に変更して作られたのがキロ (kilo) である。
1960年の第11回国際度量衡総会 (CGPM) でSIが制定される際に正式に承認された。
キビバイト - Wikipedia
キビバイト (kibibyte) とはコンピュータの容量や記憶装置の大きさをあらわす情報の単位の一つ。KiBと略記する。
2^10を表す1,024バイトを表す言葉である。
しかし本来SI接頭辞であり10^3を表すキロを使ったキロバイトは1,000バイトの意である。
このためIECが決めた2進接頭辞を用いキビバイトとしている。この呼び名を推奨している。
kibibyteとは a contraction of kilo binary byte のことである。 ようするに人類にとっては10進数の1000のほうが先出でそっちが正式なキロだが、
あとからコンピュータ業界がキロを誤用、混同して1024もそう呼んでしまったんだ。たまたま近い値だっただけ。
コンピュータが3進で、3のべきが1037とかだったそれがキロになったかもしれないし、
2の10乗ではなく、2の8乗や16乗が基本単位になった可能性もある。 だから2進数でKを使う時は1024倍ってことにすればいいじゃん
わざわざ2進数の区切りに10進数の考え方を持ってくる必要なくね 普通の人は10kBが1kBの倍の大きさとは思わない
2進数なんて使わずに10進数で考えるのが当然だ 10KBは1KBの10倍だぞ
そして誤解を生むのは1KB = 1000Bの方
コンピュータの仕組みとは異なる考え方だからな 紛らわしいから 10^3 を k (kilo)、2^10を Ki (kibi) と表記しようと言ってるのに
世の中の流れに逆行しても勝ち目は無いだろう 世の中の流れに逆行してるのは1KB = 1000Bって考え方だぞ
実際情報系はみんな1KB = 1024Bで使ってて誰もKiBなんて使ってないわ ハードディクスの容量は
1TB = 1000GBytes
1GB = 1000MBytes
1MB = 1000kBytes
1KB = 1000Bytes
になっている、そのほうが容量を大きくみせられるからね、みんな都合のいいように接尾辞を使っているね
しょうがないねえ… もともとストレージ屋が少しでも数字を大きく見せるために
1000を1Kにしたんだべ、メモリは1024そのままだけどな そう、1kbyte=1000byteなんてやってるのはストレージ屋だけなんだから
んなもん無視すりゃいいだけ 記号としての表記なのか?
1キロバイトが1024バイトがいいじゃないかという話なのか?
1キロバイトは1000バイトだし、1024なのは1キビバイトだ。 1KiB = 1024Bytes うんぬん、がいいと思うのは誰しも、なんだけれども
実際にそれを使っている人はあまりいないね
まあ、どうでもいいと思う人が多いのだろうね… プログラムに関係ない話になったら盛り上がるんだよな
何しにこの板に来てんの? わざわざiを足すのが時間のムダだし
2進数において全く意味のない1000って数字を残しとく必要もないよ
ややこしいし誤解の原因になる
Byteの前に付く時に限りKを2^10倍、Mを2^20倍、Gを2^30倍ってことにすればいい
もちろん情報系の人達はそうしてるけど国際単位系もそうすべき dockerってなに?コンテナ化というのはわかったけど、
どんな言語やアプリでもdockerでコンテナ化できるの?
これからの開発は全部dockerにしたほうがいいの? dockerはわかったけど、windowsで同じようなことできないの? メールやオンラインストレージはパスワードを設定していても
それを運営している人は見たりできますか? >>204
最近では、生パスワード保存は推奨されておらず、パスワードは暗号化されて保存されていて、管理者すらも知らない、わからないことがある。 生パスワードではなくてメールの内容やファイルの内容の事を質問してます。 >>206
システムやサービスによって異なる。サービスの規約を参照するといい。 暗号化というよりは、パスフレーズをハッシュ関数に通した結果を運営側は覚えておくようにするからね ハッシュ化したパスワードも
時間をかけることで当てられるから
パスワード流出事件は危険
管理者も同様の手段で解明することは不可能ではない
対策は
解読に十分に時間のかかる強度のパスワードで
解ける頃には新しいパスワードに更新しておくこと もっとも管理者ならパスワードなくても他の情報を見れるだろうが
同一パスワードで複数のサービスを利用してるユーザに対し
その管理者の管理外の情報も盗られるおそれ >>210
そんなことが困難であるようにするために、ハッシュワードにソルト(塩)を効かせる実装にするのが普通です
これは yellow-page の時代から、そうしていました >>212
永続的なもののソルトって固定じゃないの?
流出したアカウントに自分のものが含まれてればソルト求めるのは簡単じゃない?
ypとか公開されてるものじゃないと含まれないだろうけど ソルトはそもそも辞書攻撃への対策だからな。QZの言っていることは頓珍漢 >>214
>>210 は辞書攻撃に該当するのでは たくさん企業はあるのですが、就職したい企業がありません、もう派遣でいいやと
いう感じですが、なんか案はないのでしょうか。 >>216
お前さんの希望と、現状の会社への不満を書いた方かいい プルダウンリストボタンの右端に表示される
三角マークの名前はなんですか? もともとはテキストボックスとリストボックスがコンボした部品として
華々しくデビューしたんじゃ https://onemedia.jp/
こんな感じのサイト作成したいのですが言語は何を使ってるかわかりますか? >>224
HTML, CSS, JavaScript
ちなみにBootstrapというフレームワーク 超巨大画像掲示板を一人で運営することは可能ですか? ■ このスレッドは過去ログ倉庫に格納されています