Fixed some typos in russian intro and code structure docs

This commit is contained in:
gagarin55 2019-01-24 16:03:36 +03:00
parent 2299a03248
commit d9c38ae654
2 changed files with 15 additions and 15 deletions

View file

@ -38,13 +38,13 @@ After checking out grin, building and using, these are the folders you'll have:
- `server`\ - `server`\
A folder you're [supposed to create](build.md#running-a-node), before starting your server: cd to project root; mkdir server; cd server; grin server start (or run) and it will create a subfolder .grin A folder you're [supposed to create](build.md#running-a-node), before starting your server: cd to project root; mkdir server; cd server; grin server start (or run) and it will create a subfolder .grin
- `.grin` - `.grin`
- `chain` - a Rocksdb with the blockchain blocks and related information - `chain` - a database with the blockchain blocks and related information
- `peers` - a Rocksdb with the list of Grin peers you're connected to - `peers` - a database with the list of Grin peers you're connected to
- `txhashset` - contains folders kernel, rangeproof and output that each have a pmmr_dat.bin - `txhashset` - contains folders kernel, rangeproof and output that each have a pmmr_dat.bin
- `src`\ - `src`\
Code for the `grin` binary. Code for the `grin` binary.
- `store`\ - `store`\
Data store - a thin wrapper for Rocksdb, a key-value database forked from LevelDB. Data store - Grin uses near-zero-cost Rust wrapper around LMDB, key-value embedded data store.
- `target`\ - `target`\
Where the grin binary ends up, after the compile and build process finishes. Where the grin binary ends up, after the compile and build process finishes.
In case of trouble, see [troubleshooting](https://github.com/mimblewimble/docs/wiki/Troubleshooting) In case of trouble, see [troubleshooting](https://github.com/mimblewimble/docs/wiki/Troubleshooting)

View file

@ -235,8 +235,8 @@ Grin это проект с открытым исходным кодом, реа
Такие случаи будет трудно обнаруживать, поскольку даже если _x_ отрицательно, Такие случаи будет трудно обнаруживать, поскольку даже если _x_ отрицательно,
соответствующая точка `x*H` на ЭК является неотличимой от любых других. соответствующая точка `x*H` на ЭК является неотличимой от любых других.
Для решения этой проблемы МимблВимбл применяет другой криптографическую идею, Для решения этой проблемы МимблВимбл применяет другую криптографическую идею,
называемую range proof: доказательство того, что число находится в заданном интервале, не раскрывая называемую range proofs: доказательство того, что число находится в заданном интервале, не раскрывая
самого числа. Не вдаваясь в детали, скажем, что достаточно знать, что для любой суммы самого числа. Не вдаваясь в детали, скажем, что достаточно знать, что для любой суммы
`r.G + v.H` мы можем создать такое доказательство, которое покажет, что _v_ больше нуля и не `r.G + v.H` мы можем создать такое доказательство, которое покажет, что _v_ больше нуля и не
переполняется. переполняется.
@ -271,7 +271,7 @@ range proof-ов можно найти в [публикации о range proof-
* Ещё большую анонимность за счёт смешивания и удаления данных о транзакциях * Ещё большую анонимность за счёт смешивания и удаления данных о транзакциях
* Возможность для новых участников сети очень быстро синхронизироваться с остальными * Возможность для новых участников сети очень быстро синхронизироваться с остальными
#### Аггрегирование Транзакций #### Агрегирование Транзакций
Напомним, что транзакция состоит из: Напомним, что транзакция состоит из:
@ -297,7 +297,7 @@ range proof-ов можно найти в [публикации о range proof-
избытков ядер: избытков ядер:
сумма(выходы) - сумма(входы) = sum(избытки_ядер) сумма(выходы) - сумма(входы) = сумма(избытки_ядер)
Простыми словами, с блоками МимблВимбла можно работать точно так же, как и с транзакциями МимблВимбла. Простыми словами, с блоками МимблВимбла можно работать точно так же, как и с транзакциями МимблВимбла.
@ -310,7 +310,7 @@ range proof-ов можно найти в [публикации о range proof-
Например, даны две транзакции: Например, даны две транзакции:
ход1, вход2) -> (out1), (ядро1) ход1, вход2) -> (выход1), (ядро1)
ход3) -> (выход2), (ядро2) ход3) -> (выход2), (ядро2)
Мы можем агрегировать их в одну единую транзакцию: Мы можем агрегировать их в одну единую транзакцию:
@ -328,17 +328,17 @@ range proof-ов можно найти в [публикации о range proof-
Для предотвращения этого мы включим _смещение ядра_ в каждое ядро транзакции. Это фактор сокрытия (закрытый ключ), который Для предотвращения этого мы включим _смещение ядра_ в каждое ядро транзакции. Это фактор сокрытия (закрытый ключ), который
нужно добавлять к избытку ядра: нужно добавлять к избытку ядра:
sum(выходы) - sum(входы) = избыток_ядра + смещение_ядра сумма(выходы) - сумма(входы) = избыток_ядра + смещение_ядра
Когда мы накапливаем (аггрегируем) транзакции в блок, мы храним _одно_ накопленное значение смещения в заголовке блока. Когда мы накапливаем (агрегируем) транзакции в блок, мы храним _одно_ накопленное значение смещения в заголовке блока.
Теперь у нас есть единичное смещение, которое невозможно будет разбить по отдельным смещениям ядер и транзакции больше Теперь у нас есть единственное смещение, которое невозможно будет разбить по отдельным смещениям ядер и транзакции больше
нельзя будет восстановить: нельзя будет восстановить:
sum(выходы) - sum(входы) = sum(избыток_ядра) + смещение_ядра сумма(выходы) - сумма(входы) = сумма(избыток_ядра) + смещение_ядра
Мы "разделим" ключ `k` в сумму `k1+k2` в ходе создания транзакции. Для ядра транзакции `(k1+k2)*G` Мы "разделим" ключ `k` в сумму `k1+k2` в ходе создания транзакции. Для ядра транзакции `(k1+k2)*G`
мы оставляем открытыми `k1*G` (избыток) и `k2` (смещение) и подписываем транзакцию используя `k1*G` как раньше. мы оставляем открытыми `k1*G` (избыток) и `k2` (смещение) и подписываем транзакцию используя `k1*G` как раньше.
В ходе сборки бока мы можем просто просуммировать смещения ядер для создания одного агрегированого смещения, В ходе сборки блока мы можем просто просуммировать смещения ядер для создания одного агрегированого смещения,
покрывающего все транзакции в блоке. Смещения каждой отдельно взятой транзакции теперь невозможно восстановить. покрывающего все транзакции в блоке. Смещения каждой отдельно взятой транзакции теперь невозможно восстановить.
#### Прорезание #### Прорезание
@ -374,7 +374,7 @@ range proof-ов можно найти в [публикации о range proof-
I2(x2) | O4 I2(x2) | O4
| O5 | O5
Заметим, что структура транзакций была потеряна и порядок вдохов и выходов больше не имеет значения. Однако, по-прежнему Заметим, что структура транзакций была потеряна и порядок входов и выходов больше не имеет значения. Однако, по-прежнему
гарантируется, что сумма всех входов за вычетом суммы всех выходов в блоке равна нулю. гарантируется, что сумма всех входов за вычетом суммы всех выходов в блоке равна нулю.
Блок строится из: Блок строится из:
@ -388,7 +388,7 @@ range proof-ов можно найти в [публикации о range proof-
* Подпись, сгенерированная из *избыточного значения*. * Подпись, сгенерированная из *избыточного значения*.
* Комиссия. * Комиссия.
Организованный таким образом блоки МимблВимбла могут предложить исключительные гарантии приватности: Организованные таким образом блоки МимблВимбла могут предложить исключительные гарантии приватности:
* Промежуточные транзакции (прорезанные) представляются только их *ядрами*. * Промежуточные транзакции (прорезанные) представляются только их *ядрами*.
* Все выходы выглядят одинаково: просто очень большие числа, которые невозможно отличить друг от друга. Если кто-то * Все выходы выглядят одинаково: просто очень большие числа, которые невозможно отличить друг от друга. Если кто-то